限制JavaScript源的范围

时间:2017-02-14 03:58:14

标签: javascript

我已经暂时接过了我的工作同事的一个基本网络项目。它使用的是Kentico平台。我对网络开发缺乏经验;我知道这个项目的大部分内容已经足够了,但我遇到了一个问题。有一个脚本需要在网页中的一个表上运行,该表依赖于:

<script   
    src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js">
</script>

但是,将此源螺钉添加到网页的其余部分并使其无法使用。

有没有办法限制范围&#34;的来源,以便它不会影响整个网页?

2 个答案:

答案 0 :(得分:0)

jQuery有一个特定的功能,$.noConflict(),正是这样做的。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script>
    altjquery = $.noConflict(true);
</script>

现在,新加载的jQuery已从默认$jQuery(现在从altjquery访问)中提取,原始值已恢复。

如果您想在自己的代码中使用自己的jQuery版本,可以使用以下内容进行操作:

(function($){
    // Your code here
})(altjquery);

这使您可以在该部分中使用典型的$ jQuery。

你可能想重新考虑一下。您的页面已经加载了jQuery(这就是您遇到此问题的原因)。更糟糕的是,您正在尝试加载旧版本。无论是使用网页的jQuery还是加载更新的版本,您都可能会更好。

答案 1 :(得分:-1)

我认为你遇到的问题更多的是关于jQuery选择器而不是范围。您需要将现有代码中的$()调用缩小到您感兴趣的表中。

例如,您可以使用myObject.sort((a, b) => { return a.stepNumber < b.stepNumber ? -1 : a.stepNumber > b.stepNumber ? 1 : 0; }); 代替$('#myTable')