微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JQuery与其他JQuery库冲突

我使用 jquery一个模块.我的joomla模板有一个集成的jquery菜单.所以他们相互冲突.

有没有办法解决这个问题.遵循模块的脚本代码

<script type="text/javascript" charset="utf-8">
    window.onload = function () {
        var container = jQuery('div.slidergallery');
         var ul = jQuery('ul',container);

         var itemsWidth = ul.innerWidth() - container.outerWidth();

         jQuery('.slider',container).slider({
             min: 0,max: itemsWidth,handle: '.handle',stop: function (event,ui) {
                 ul.animate({'left' : ui.value * -1},340);
             },slide: function (event,ui) {
                 ul.css('left',ui.value * -1);
             }
         });
     };
</script>

解决方法

解决问题所需要做的就是将jQuery函数取消别名,并将其分配给另一个变量名(记住:变量可以是函数).您需要使用 jQuery.noConflict()函数来取消别名$()函数.这里有一个
// ...after all of Joomla's JS is done executing...

// before loading your version of jQuery var jquery = {}; // aka new Object()
jquery.joomla = jQuery.noConflict(); // moves jQuery into another namespace

// load your version

现在,当您加载版本时,它将接管jQuery和$命名空间,但如果需要,您仍然可以对Joomla的jQuery函数进行其他引用.要重新迭代,基本流程是:

>加载Joomla的jQuery>运行Joomla的jQuery相关代码>将Joomla jQuery移动到另一个命名空间>加载你的jQuery>使用$()执行代码

原文地址:https://www.jb51.cc/jquery/176050.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐