jQuery从右到左滑动

时间:2013-07-30 22:41:07

标签: javascript jquery

我有一个wordpress购买主题我想在页面加载或加载时改变JavaScript的行为

目前我的标题是从上到下的动画我想在运行时更改该行为。

你可以在这里看到它

http://wordpress.p198800.webspaceconfig.de/

我试过这样做

<style type="text/css">
    .myFix { bottom: 0 !important; }
</style>

<script type="text/javascript">

    function myFix() {

        $("#slidecaption").addClass("myFix");

        $("#slidecaption").css("marginRight", "0").animate({
            marginRight: "+=1000"
        });
    }
</script>

1 个答案:

答案 0 :(得分:1)

他们的jQuery表达式是正确的,但如果你从未实际调用myFix()代码永远不会运行。

自主执行功能的常用方法是SEAF(自动执行匿名功能):

(function myFix() {
  $("#slidecaption").addClass("myFix");

  $("#slidecaption").css("marginRight", "0").animate({
    marginRight: "+=1000"
  }
})();

包装这样的函数会导致它在没有显式调用的情况下运行。

这个具体的例子在技术上并不是匿名的,但假设您打算在其他时间调用myFix(),同时仍希望它能够自行运行。

如果您不需要调用它并且只需要应用jQuery规则,那么将该功能从图片中取出:

<script>
  $("#slidecaption").addClass("myFix");

  $("#slidecaption").css("marginRight", "0").animate({
    marginRight: "+=1000"
  }
</script>

更多信息:http://markdalgleish.com/2011/03/self-executing-anonymous-functions/

我在这里假设myFix()的调用失败是个问题。如果您确实将此功能绑定到此处未显示的某个事件,请更新您的帖子。

另一种选择是,当应用这些规则时,由于DOM的状态,jQuery选择器没有找到任何东西。尝试:

console.log($('#slidecaption'));

查看jQuery是否返回任何内容。如果没有,那么这很可能就是你的问题;)