2

我在同一页面上放置两个 jQuery 脚本时遇到问题,我该怎么办?

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.slidepanel.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $('[data-slidepanel]').slidepanel( {
            orientation: 'left',
            mode: 'push'
        });
    });

</script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="js/jquery.mixitup.min.js"></script>
<script type="text/javascript">
    $(function() {
        $('#Grid').mixitup();
    });
</script>

我知道 jQuery.noConflict() 可以解决这个问题,但我不知道如何将它应用到这个问题上。有什么帮助吗?

4

3 回答 3

3
  1. 正如大家所说,你只需要一份 jQuery。建议您照常使用 Google CDN,如此处所述

  2. 如果它仍然不起作用,请分别尝试代码的每个元素。所以像这样重新格式化你的代码。您会注意到我已经type="text/javascript"为其中一个脚本添加了内容。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.slidepanel.js"></script>
<script type="text/javascript" src="js/jquery.mixitup.min.js"></script> 

<script type="text/javascript">
    (function($){ // Self-executing wrapper that sets $=jQuery
        $(function() { // Fires onload
            $('[data-slidepanel]').slidepanel( {
                orientation: 'left',
                mode: 'push'
            });
            $('#Grid').mixitup();
        });
    }(jQuery));
</script>

然后尝试注释掉这两个$('...语句,看看一个或两个是否有效。

于 2013-08-17T23:50:15.173 回答
1

删除旧版本并使用此版本http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js Rmove 旧版本,如 jquery-1.5.2.js 和 jquery-1.9.1.min .js

于 2014-01-28T10:36:46.670 回答
1

为什么你还需要两个 jQuery 库?!只需使用较新的!... 甚至假设您需要旧的,因为您需要一些新框架中不可用的功能。只需在搜索模式下查找它们,然后将它们一一复制到新框架中(只有像我一样离线使用 jQuery 才能完成,这样可以节省开发过程中的加载时间,因为它会被缓存。) PS:我希望这不会'不会造成任何版权侵犯:/

于 2013-08-17T22:44:40.850 回答