jQuery函数必须在体内吗?

时间:2013-03-30 20:35:20

标签: jquery execution

我正在尝试根据较旧的jQuery菜单设置动画菜单。旧版本,该函数与jQuery版本引用链接一起直接放入正文。我遇到的问题是,这个设置与我想要放在页面上的旋转横幅相冲突。

实际上,目前它们不能同时运行。它们也在不同的jQuery版本上运行。

我得到了一些帮助将jQuery执行函数放入外部文件,但是没有解决菜单问题,因为必须在正文中引用jQuery版本和调用才能使用它。

之前我看过jQuery菜单,不需要直接放在体内。或者他们呢?我知道下面是一个非常糟糕的方式来做它,因为它在页面的主体内,加上它使用过时的jQuery版本,这就是为什么我希望更新它使它更加坚实。

       <body>
       <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <script type="text/javascript" src="jquery.easing.1.3.js"></script>
       $(document).ready(function() {
          $(function() {
              $('#hn_menu > li').bind('mouseenter',function(){
                 var $elem = $(this);
                 $elem.find('img')
                 .stop(true)
                 .animate({
                    'width':'120px',
                    'height':'120px',
                    'left':'0px'
                 },400,'easeOutBack')
              .andSelf()
              .find('.hn_wrap')
              blah blah blah
             });
          });
         </body>

3 个答案:

答案 0 :(得分:1)

不,脚本不需要b在正文中。在使用ready事件时,脚本可以在页面的任何位置(当然,在加载jQuery库之后)。

通常,您会将脚本放在head标记中,而不是body标记中。如果您希望脚本比其他资源更晚加载,或者如果他们没有使用bodyready事件,那么脚本通常只会放在load标记中,因此必须放置sript在它访问的元素之后。

(请注意,您发布的代码缺少脚本周围的script标记,因此它只会在页面中显示。)

答案 1 :(得分:0)

没有。您可以将它放在<script type="text/javascript"> </script>标记之间的任何位置。在此之前,如果您使用的是jQuery,则必须加载jQuery。

答案 2 :(得分:0)

jQuery v1.9.1适用于所有以前版本的jQuery,无论他们声称哪些方法已被弃用。您甚至不需要迁移指南脚本。

例如,此脚本有

   .andSelf()

jQuery说它被替换为

    .addBack(optional param)

它可能已被替换,但addSelf()仍适用于新的1.9.1