不能读取属性'noConflict'未定义(Chrome扩展)

Cannot read property 'noConflict' of undefined (Chrome Extension)

本文关键字:Chrome 扩展 未定义 noConflict 读取 不能读 不能 属性      更新时间:2023-09-26

我有一个chrome扩展,它使用jQuery作为内容脚本与无冲突,如;

var myDomainJquery = $.noConflict(true);
另一方面,一些网站也在使用jQuery noconflict,比如;例如New York times
<script>var jQ = jQuery.noConflict(true);</script> 

然后我在主机网站上得到无法读取属性'noConflict'的未定义错误。

有办法解决这个问题吗?

是的,有。修复它的方法是理解脚本运行的孤立上下文内容。

内容脚本无法访问页面本身加载的任何JS;如果您需要jQuery,则需要将其打包到扩展中,然后自己先注入。好的一面是,它不会与页面发生冲突,您可以简单地使用$ .