Javascript 如何在不更改第三方库的情况下使用jquery noConflict
我需要使用我们的第三方提供的用jquery编写的库。一旦我尝试合并jquery,我们的代码库中就会与$sign发生冲突。我可以通过为$sign创建别名,然后在第三方库中使用别名更新$sign来解决冲突。因为它是由第三方编写的代码,我对jquery不是很熟悉,所以我更愿意找到一种不涉及更新第三方代码本身的解决方法。我还有一个InlinneJavaScript(也是由第三方提供的),它需要在页面本身上启动。有什么想法吗?下面是我正在使用的jquery文件的示例:Javascript 如何在不更改第三方库的情况下使用jquery noConflict,javascript,jquery,Javascript,Jquery,我需要使用我们的第三方提供的用jquery编写的库。一旦我尝试合并jquery,我们的代码库中就会与$sign发生冲突。我可以通过为$sign创建别名,然后在第三方库中使用别名更新$sign来解决冲突。因为它是由第三方编写的代码,我对jquery不是很熟悉,所以我更愿意找到一种不涉及更新第三方代码本身的解决方法。我还有一个InlinneJavaScript(也是由第三方提供的),它需要在页面本身上启动。有什么想法吗?下面是我正在使用的jquery文件的示例: <!-- jquery lib
<!-- jquery libs -->
<script src="/js/jquery-1.11.1.min.js"></script>
<script src="/js/jquery-ui.min.js"></script>
<!-- third party library using jquery code-->
<script type="text/javascript" src="/js/jqueryTest.js"></script>
<!-- inline javascript that gets fired on the page itself -->
<script>
$('#formvalue').jqueryTest({
subdomain: 'xyz',
selectData: function (data) {
$('#formvalue').val(data.value);
$('#form').submit();
});
</script>
$('#formvalue').jqueryTest({
子域:“xyz”,
选择数据:功能(数据){
$('#formvalue').val(data.value);
$('表格').submit();
});
通过这种方式,您可以编写:
var jq = $.noConflict();
jq(document).ready(function(){
jq("button").click(function(){
jq("p").text("jQuery is still working!");
});
});
欲了解更多信息,请参考以下链接
希望有帮助:)编辑第三方LIB不是一种正确的方法,因为它不可维护 请从以下位置查看此代码:
$.noConflict();
//使用其他库的$的代码可以在这里找到。
试试这个:
<!-- jquery libs -->
<script src="/js/jquery-1.11.1.min.js"></script>
<script src="/js/jquery-ui.min.js"></script>
<!-- third party library using jquery code-->
<script type="text/javascript" src="/js/jqueryTest.js"> </script>
<!-- inline javascript that gets fired on the page itself <script>
$.noConflict();
$('#formvalue').jqueryTest({
subdomain: 'xyz',
selectData: function (data) {
$('#formvalue').val(data.value);
$('#form').submit();
}
});
</script>
还有哪一个库与jQuery的$
冲突?在你的帖子中,听起来好像都是jQuery,不会引起任何冲突。嗨,azium,我使用了很多其他库,在这里粘贴代码会很复杂,因此我粘贴了我如何只包含jQuery。嗨,疑难解答。这就是我所做的,也是我所做的。但是,使用这种方法,我也需要在第三方库中更新$sign,这是我试图避免的。谢谢,我同意我不应该更新第三方库。我需要添加$.noConflict()吗也在jqueryTest.js中?如何确保我没有任何来自第三方库的$conflicts?检查第一个示例。在开始使用第三方库的地方,在前面添加noConflict。这就足够了。
<!-- jquery libs -->
<script src="/js/jquery-1.11.1.min.js"></script>
<script src="/js/jquery-ui.min.js"></script>
<!-- third party library using jquery code-->
<script type="text/javascript" src="/js/jqueryTest.js"> </script>
<!-- inline javascript that gets fired on the page itself <script>
$.noConflict();
$('#formvalue').jqueryTest({
subdomain: 'xyz',
selectData: function (data) {
$('#formvalue').val(data.value);
$('#form').submit();
}
});
</script>