0

我有 jquery mouseenter 和 mouseleave 的问题。我有一个链接按钮,当您将鼠标悬停在它上面以显示链接图片时,它会向左滑动。对于更流畅的动画,它至少要等待一秒钟才能滑回。但是由于延迟,当你在它上面移动不止一次时它会发射。
我已经搜索了几天关于这个主题,但没有解决方案。现在我想用一个条件来解决这个问题。到目前为止,这是我的代码。

    if( $(".block_dev").is ('animated') ) {} else {  

    $(".border_dev").mouseenter(function() {  
        $(".block_dev").animate({"left": "-=41px"}, "slow")  
                       .wait(); })  
                    .mouseleave(function() {  
        $(".block_dev").animate({"left": "+=41px"}, "slow")  
                       .wait(); }) }  

.wait() 是超时脚本。在 if 条件下,我希望它什么都不做(没有新的 mouseenter 计数),只有在它完成后它才应该重新启动,但它不起作用。
谢谢您的帮助!

4

2 回答 2

0

我怀疑你的意思是.is(':animated')因为它animated本身不是一个有效的选择器。(理论上,这会像选择标签<animated ...>一样p选择标签<p ...>,当然这根本不是您的想法。)

于 2011-04-30T14:33:54.037 回答
0

尝试将您的条件放在事件处理程序中(而不是围绕您创建它们),然后使用':animated'(而不是'animated')。

于 2011-04-30T14:57:01.150 回答