【问题标题】:JQuery - animate a div leftJQuery - 动画左div
【发布时间】:2012-02-27 20:52:04
【问题描述】:

我正在开发一个应该支持 JQuery 动画的网站, 我想为菜单项设置动画,这样如果鼠标悬停在菜单项上,每个菜单项都应该向右移动,

我在网上搜索并找到了所需的动画脚本,但它们不起作用,

谁能帮帮我?

这是我拥有的代码的平静:

$('.menuButton').hover(
            function () { $(this).animate({ "left": "+=50px" }, "slow"); },
            function () { $(this).animate({ "left": "-=50px" }, "slow"); }
        );

它已经在document.ready(..)中

我希望我能找到答案, 谢谢。

【问题讨论】:

  • 确保 menuButton 绝对定位。另外,请使用 jsfiddle.net 显示您的标记和 CSS,以便我们更好地帮助您。
  • 当前代码运行良好。你用的是什么版本的jQuery?
  • 我正在使用 jquery-1.7.1.min,这是 HTML 代码,
    div>
  • jsfiddle.net/jasper/GH5BJ。或者position : relative 有效,但position : absolute 是性能最佳的(它确实有很大的不同)。请注意,您将元素从光标移开,这可能会触发无限循环的事件。
  • 我将位置设置为相对位置,效果很好,感谢您的提示 :)

标签: jquery html jquery-animate


【解决方案1】:

第二个动画应该是作为回调传递的。

    $('.menuButton').hover(function(){
        var $this = $(this);
        $this.animate({ "left": "+=50px" }, "slow", function() {
            $this.animate({ "left": "-=50px" }, "slow");
        });
    });

【讨论】:

  • 谢谢,div 应该像 Japser 回复的那样相对定位,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-29
  • 2012-03-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多