J'ai une div que j'essaie d'échanger pour une autre div avec un effet de clip. Cependant, lorsque je fais cela dans Firefox, il capture le contenu restant pendant l'animation et le renvoie au centre une fois l'opération terminée.Problème: jQuery accroche div lors de l'animation
Cela fonctionne comme prévu dans IE6 (gasp! Toujours la norme à mon travail, campagne pour mettre à jour), mais pas dans Firefox.
Qu'est-ce que je fais mal?
Javascript:
<script type="text/javascript">
$(function(){
$("#editEmpInfo").click(function(){
$("#selectedEmployee").hide("clip", { direction: "vertical" }, 500, function() {
$("#editSelectedEmployee").show("clip", { direction: "vertical" }, 500);
});
});
$("#saveEmpInfo").click(function(){
$("#editSelectedEmployee").hide("clip", { direction: "vertical" }, 500, function() {
$("#selectedEmployee").show("clip", { direction: "vertical" }, 500);
});
});
});
</script>
HTML:
<div class="container">
<div id="selectedEmployee" class="container400">
<div class="currentEmp">
<div class="currentEmpName">
Last, First <br />
<span class="empWorkUnit">Work Unit</span>
</div>
<div id="editEmpInfo"><a title="Edit" href="#"></a></div>
<div class="currentEmpInfo">
<div>Ext: </div>
<div>Cell: </div>
<div>Home: </div>
<div>Pager: </div>
<div>Other: </div>
<div>Notes: </div>
</div>
</div>
</div>
<div id="editSelectedEmployee" class="container400 hidden">
<div class="currentEmp">
<div class="currentEmpName">
Last, First <br />
<span class="empWorkUnit">Work Unit</span>
</div>
<div id="saveEmpInfo"><a title="Save" href="#"></a></div>
<div class="currentEmpInfo">
<div>Ext: </div>
<div>Cell: </div>
<div>Home: </div>
<div>Pager: </div>
<div>Other: </div>
<div>Notes: </div>
</div>
</div>
</div>
</div>
CSS:
body {
font-family: "Lucida Sans Unicode","Lucida Grande",Sans-Serif;
font-size: 12px;
}
.container {
margin-left: auto;
margin-right: auto;
text-align: center;
}
.container400 {
width: 400px;
margin-left: auto;
margin-right: auto;
text-align: left;
}
.hidden {
display: none;
}
.currentEmp {
border: solid 1px #CCCCCC;
display: block;
padding: 10px;
}
#selectedEmployee {
background: #EEEEEE;
}
#editSelectedEmployee {
background: #E8EDFF;
}
.currentEmpName {
font-size: 18px;
color: #0077D4;
float: left;
}
.currentEmpName .empWorkUnit {
font-style: italic;
font-size: 14px;
font-weight: normal;
color: #000000;
}
#editEmpInfo a{
display: block;
background: url("../images/Edit.png") no-repeat;
width: 32px;
height: 32px;
margin: 5px;
float: right;
}
#upOneLevel a{
display: block;
background: url("../images/Up.png") no-repeat;
width: 32px;
height: 32px;
margin: 5px;
float: right;
}
#saveEmpInfo a{
display: block;
background: url("../images/Save.png") no-repeat;
width: 32px;
height: 32px;
margin: 5px;
float: right;
}
.currentEmpInfo {
clear: both;
}
#callSheet {
border-collapse: collapse;
font-family: "Lucida Sans Unicode","Lucida Grande",Sans-Serif;
font-size: 12px;
margin: 20px;
text-align: left;
min-width: 700px;
margin-left: auto;
margin-right: auto;
}
#callSheet th {
background: none repeat scroll 0 0 #B9C9FE;
color: #003399;
font-size: 13px;
font-weight: normal;
padding: 8px;
text-align: center;
}
#callSheet td {
background: none repeat scroll 0 0 #E8EDFF;
border-top: 1px solid #FFFFFF;
color: #666699;
padding: 8px;
}
#callSheet tbody tr:hover td {
background: none repeat scroll 0 0 #D0DAFD;
}
Merci, mais cela n'a malheureusement pas semblé changer quoi que ce soit dans le comportement. –
Jetez un oeil à ma réponse révisée. Je crois que j'ai été capable de résoudre le problème en déplaçant certains styles autour. –