阻止第三方JavaScript插入jQuery
prevent third party JavaScript to insert jQuery
我们有一个包含jQuery和第三方JavaScript API的页面。这个api在运行时将jQuery动态插入到页面中。它会引发冲突。
如何防止第三方API将jQuery添加到页面?
我的答案应该由他们而不是你们来应用,Third-Party Javascript
的第一条规则是:
"You Don't own the website"
因此,如果他们想使用jQuery,那么他们必须使用jQuery noConflict
,这是处理一个使用多个jQuery版本(你的和他们的)的网站的最佳方式:
将jQuery完全移动到另一个对象中的新名称空间。
var j = jQuery.noConflict(true);
// then you can say
j( "div p" ).hide();
如果添加此行,然后定义一个新的jQuery,则默认情况下,j
将是旧版本的别名,jQuery - $
将是新版本的别名。
如果你想确定;您可以查看页面中的jQuery版本:
j.fn.jquery // this should show you your jQuery version
jQuery.fn.jquery // this should show you their jQuery version
如果你仍然需要使用这个第三方javascript,并且他们无法更改代码,你可以使用它。你可以阅读更多关于jQuery noconflict 的信息
您可以将jQuery分配给一个用作:mycode.$
和mycode.jQuery
的命名空间,以便以后使用:
mycode.$("div p")
使用名称空间总是更安全的,以确保没有其他人在相同的代码中写入可以覆盖您的变量。
实际上没有办法阻止脚本运行。我昨天也在处理类似的事情。有一些方法可以覆盖它所做的更改,但除了不拉入之外,没有任何动态方法可以阻止它运行
相关文章:
- 如何动态插入jquery代码
- 换行符插入jquery选择器
- 将方法插入jQuery插件
- 在另一个脚本后插入Jquery
- 我应该如何在提交操作之前插入jQuery代码
- 创建 var 并将其插入 jQuery Child Selector(“父>子”)
- 如何在页脚中插入 jQuery 时定义变量
- 阻止第三方JavaScript插入jQuery
- 如何将HTML文本插入jQuery
- 如何将PHP插入jQuery
- 通过PHP在MySQL中插入Jquery
- 如何在PHP代码中插入jQuery插件?
- 在DOM中插入jQuery验证代码
- 使用userscript在header中插入jQuery和jQuery UI
- 在对象id:中插入jquery字符串
- 在表模板中插入jQuery输入
- Jquery插入Jquery属性
- 在带有事件的另一个浏览器选项卡中插入jQuery对象
- 如何在php数组中插入jquery值
- 难以将变量插入jquery属性标识