我尝试传递一个div id后,在JQUERY中进行动画调用以消除id,但由于某种原因,div在动画中间消失:(
function onMouseOut() {
$('#tdgoogle').mouseout(function(evento) {
$('#div1').css("display", "block");
$('#fotogoogle').animate({
marginLeft : "0px"
}, 500, callBackGoogle("div1"));
function callBackGoogle(cadena) {
$(cadena).css("display", "none");
}
});
}
答案 0 :(得分:2)
只需传递一个包装函数,就像这样
$('#fotogoogle').animate({
marginLeft : "0px"
}, 500, function() {
callBackGoogle("div1");
});
另外,将div1更改为#div1
答案 1 :(得分:0)
使用正确的选择器,id
您需要使用#
:
$(cadena).css("display", "none");
到
$("#" + cadena).css("display", "none");
更新
....
$('#fotogoogle').animate({
marginLeft : "0px"
}, 500, function() { callBackGoogle("div1")});
function callBackGoogle(cadena) {
$("#" + cadena).css("display", "none");
}
答案 2 :(得分:0)
这可能只是人类视力限制。如果你放慢了动画的速度,你可能会发现它并没有在变化的中间消失
$('#tdgoogle').mouseout(function(evento) {
$('#fotogoogle').css("margin-left",0);
$('#div1').css("display", "block");
$('#fotogoogle').animate({
marginLeft : "100px"
}, 500,function(){ callBackGoogle("#div1")});
function callBackGoogle(cadena) {
$(cadena).css("display", "none");
}
});