jQuery只允许一个版本

jha*_*fen 3 jquery external-script

我有一个第三方脚本,包括jquery(导致事情中断).我使用的是1.6版本,外部脚本使用的是旧版本.

如何强制只加载一个版本的jquery,它是我在页面上的版本而不是外部加载的版本?

ste*_*lin 5

使用jquery.noConfict();这实际上很容易做到;

<script src='jquery-1.6.js'></script>
<script>
var jq16 = jQuery.noConflict();
</script>
<script src='jquery-1.4.2.js'></script>
<script>
var jq142 = jQuery.noConflict();
</script>
Run Code Online (Sandbox Code Playgroud)

然后,您可以让函数使用$()命名空间,如下所示:

 (function($) {
$('<button>Use jQuery 1.4.2</button>')
    .click(function() {
        alert('Top: ' + $(this).offset().top + '\n' +
            'jQuery: ' + $.fn.jquery);
    })
    .appendTo('body');
})(jq142);
Run Code Online (Sandbox Code Playgroud)

此页面上有一个更详细的示例和一些额外的提示.