我有一段代码正在从点击功能运行。由于某种原因,动画低至100px的部分永远不会运行console.log
或my_function()
,它会跳过放在那里的任何内容。动画高达200px的部分都运行良好。是什么给了什么?
if($(this).hasClass('open'))
{
$(this).removeClass('open').addClass('closed');
$(this).animate({'width': '100px'}, {queue:false, duration:150, easing: 'linear'}).delay(160, function (){
//Nothing in here ever get run??
console.log('closed');
my_function();
});
}
else
{
$(this).removeClass('closed').addClass('open');
$(this).animate({'width': '200px'}, {queue:false, duration:200, easing: 'linear'}).delay(210, function (){
console.log('opened');
my_function();
});
}
答案 0 :(得分:5)
$.fn.delay
没有回调参数。
答案 1 :(得分:1)
您应该使用.animate
的回调,而不是尝试使用.delay
。试试这个:
$(this).animate({'width': '100px'}, 150, function (){
console.log('closed');
my_function();
});