jQuery noConflict() 方法用法实例分析
本文实例讲述了jQuerynoConflict()方法用法。分享给大家供大家参考,具体如下:
jQuery-noConflict()方法
如何在页面上同时使用jQuery和其他框架?
要解决这个问题,只需要使用jQuery中的noConflict()方法,它允许你在同一个页面加载多个jQuery实例,尤其是不同版本的jQuery。
jQuery和其他JavaScript框架
正如您已经了解到的,jQuery使用$符号作为jQuery的简写。
如果其他JavaScript框架也使用$符号作为简写怎么办?
其他一些JavaScript框架包括:MooTools、Backbone、Sammy、Cappuccino、Knockout、JavaScriptMVC、GoogleWebToolkit、GoogleClosure、Ember、Batman以及ExtJS。
其中某些框架也使用$符号作为简写(就像jQuery),如果您在用的两种不同的框架正在使用相同的简写符号,有可能导致脚本停止运行。
jQuery的团队考虑到了这个问题,并实现了noConflict()方法。
jQuerynoConflict()方法
noConflict()方法会释放对$标识符的控制,这样其他脚本就可以使用它了。
当然,您仍然可以通过全名替代简写的方式来使用jQuery:
实例
$.noConflict(); jQuery(document).ready(function(){ jQuery("button").click(function(){ jQuery("p").text("jQueryisstillworking!"); }); });
也可以创建自己的简写。noConflict()可返回对jQuery的引用,您可以把它存入变量,以供稍后使用。请看这个例子:
实例
varjq=$.noConflict(); jq(document).ready(function(){ jq("button").click(function(){ jq("p").text("jQueryisstillworking!"); }); });
如果你的jQuery代码块使用$简写,并且您不愿意改变这个快捷方式,那么您可以把$符号作为变量传递给ready方法。这样就可以在函数内使用$符号了-而在函数外,依旧不得不使用"jQuery":
实例
$.noConflict(); jQuery(document).ready(function($){ $("button").click(function(){ $("p").text("jQueryisstillworking!"); }); });
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery页面元素操作技巧汇总》、《jQuery常见事件用法与技巧总结》、《jQuery常用插件及用法总结》、《jQuery扩展技巧总结》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。