为什么以下代码段不起作用?它没有给出任何错误,但它也不起作用。关于我在这里
看到的空物体。
<script type="text/javascript">
jQuery(document).ready(function(){
var o = jQuery({});
var block = jQuery('#box');
jQuery('#start').click(function(){
o.queue('custom',function(next){
block.animate({left:"+=500"},1000);
next();
});
o.queue('custom',function(next){
block.animate({left:"-=500"},1000);
next();
});
o.queue('custom',function(next){
block.animate({top:"+=500"},1000);
next();
});
o.queue('custom',function(next){
block.animate({top:"-=500"},1000);
next();
});
o.dequeue('custom');
});
});
</script>
更新 1
如果我在 dequeue 调用之前和之后插入 console.log,如下所示:
console.log(o.queue('custom').length);
o.dequeue('custom');
console.log(o.queue('custom').length);
然后我在控制台中得到 4 0。这意味着函数被添加到队列中并因此出队。
更新 2
如果我在块动画之后立即插入 console.log,例如,像这样:
block.animate({left:"+=500"},1000);
console.log('1');
然后我得到 1 2 3 4,这意味着所有 4 个函数都被调用了。
更新 3
我的html很简单:
body 标签中有 1 个输入按钮和 1 个 div。div 有以下 CSS:
宽度:200 像素;高度:200 像素;显示:块;背景:无 重复滚动 0 0 绿色