我有一个简单的jQuery函数有点问题。我是jQuery的初学者,因此我可以使用一些帮助。
这是我用来在我的网页上动画一些div的jQuery函数。它适用于Chrome,Safari和IE,但它不适用于Firefox。
在Firefox上,当我点击按钮时,它什么也没发生。我搜索了firebug的JS问题,但id没有说什么。我只是在“$(”#button“)行之后设置一个警告(”test“)。单击(function(){”并显示这一个。此后的警报不会弹出。该函数以某种方式停止点击后(function(){...
)jQuery(function($){
$("#button").click(function(){
var left = parseInt($('#formular').css("left"));
if(left == -27) {
$('#formular').animate({left:"0%"}, 1000, 'easeOutCubic');
$('#button').animate({top:"436px"},200);
}
if (left == 0) {
$('#formular').animate({left:"-27%"}, 1000, 'easeInCubic');
$('#button').delay(1000).animate({top:"-7px"},200 );
}
});
});
有人可以帮我吗?
由于
感谢您的帮助
问题是,在firefox .css(“left”)上返回px中的值而不是百分比...
这是有效的代码:
jQuery(function($){
$("#button").click(function(){
var left = parseInt($('#formular').css("left"))
if(left == -27 ) {
$('#formular').css("display","block");
$('#formular').animate({left:"0%"}, 1000, 'easeOutCubic');
$('#button').animate({top:"436px"},200);
}
if (left == 0) {
$('#formular').animate({left:"-27%"}, 1000, 'easeInCubic');
$('#formular').delay(300).queue(function(next){
$(this).css('display','none');
next();
});
$('#button').delay(1000).animate({top:"-7px"},200 );
}
});
});