JQuery的$和其它JS发生冲突的快速解决方法


Posted in Javascript onJanuary 24, 2014

众所周知,jQuery是目前最流行的JS封装包,简化了很多复杂的JS程序,JQuery讲浏览器DOM树定义为$,通过$来获取各个子节点。

然后,JS插件并非只有JQuery,还有prototype.js 等其它比较好的插件。它们也使用$。所以有时候同时使用这个两个JS插件的时候,就会出现$的使用权冲突问题。现在我们来看看如何解决这个冲突问题。请看下文:

我们都知道JQuery有一个函数,jquery.noConflict() 它的作用是讲$的控制权转让出去。然后我们可以通过jQuery代替$来获取dom节点

举例:

方法一:

<script type="text/javascript">
jQuery.noConflict(); //将变量$的控制权让渡给prototype.js
jQuery(function(){ //使用jQuery
jQuery("p").click(function(){
alert( jQuery(this).text() );
});
});
$("pp").style.display = 'none'; //使用prototype
</script>

方法二:

我们可以通过noConflict()函数来定义一个快捷方式用来获取dom节点

<script type="text/javascript">
var $j = jQuery.noConflict(); //自定义一个比较短快捷方式
$j(function(){ //使用jQuery
$j("p").click(function(){
alert( $j(this).text() );
});
});
$("pp").style.display = 'none'; //使用prototype
</script>

还有其它的方法,都给大家列举出来,同理都可以看明白了吧,呵呵。

方法三:

<script type="text/javascript">
jQuery.noConflict(); //将变量$的控制权让渡给prototype.js
jQuery(function($){ //使用jQuery
$("p").click(function(){ //继续使用 $ 方法
alert( $(this).text() );
});
});  
$("pp").style.display = 'none'; //使用prototype
</script>

方法四:
<script type="text/javascript">
jQuery.noConflict(); //将变量$的控制权让渡给prototype.js
(function($){ //定义匿名函数并设置形参为$
$(function(){ //匿名函数内部的$均为jQuery
$("p").click(function(){ //继续使用 $ 方法
alert($(this).text());
});
});
})(jQuery); //执行匿名函数且传递实参jQuery
$("pp").style.display = 'none'; //使用prototype
</script>
Javascript 相关文章推荐
jquery蒙版控件实现代码
Dec 08 Javascript
鼠标滚轮控制网页横向移动实现思路
Mar 22 Javascript
jquery $.each 和for怎么跳出循环终止本次循环
Sep 27 Javascript
jQuery插件jQuery-JSONP开发ajax调用使用注意事项
Nov 22 Javascript
js设置控件的隐藏与显示的两种方法
Aug 21 Javascript
在Javascript中处理数组之toSource()方法的使用
Jun 09 Javascript
js实现选中复选框文字变色的方法
Aug 14 Javascript
JS简单实现多级Select联动菜单效果代码
Sep 06 Javascript
jQuery插件pagination实现无刷新分页
May 21 Javascript
easyui combotree加载静态数据问题(选不上)解决方法
Dec 26 Javascript
javaScript嗅探执行神器-sniffer.js
Feb 14 Javascript
JavaScript图片旋转效果实现方法详解
Jun 28 Javascript
js判断60秒以及倒计时示例代码
Jan 24 #Javascript
innerText 使用示例
Jan 23 #Javascript
登陆成功后自动计算秒数执行跳转
Jan 23 #Javascript
检查输入的是否是数字使用keyCode配合onkeypress事件
Jan 23 #Javascript
html dom节点操作(获取/修改/添加或删除)
Jan 23 #Javascript
解决jquery插件冲突的问题
Jan 23 #Javascript
js实现日期级联效果
Jan 23 #Javascript
You might like
PHP 可阅读随机字符串代码
2010/05/26 PHP
php检查是否是ajax请求的方法
2015/04/16 PHP
ThinkPHP5框架缓存查询操作分析
2018/05/30 PHP
jqTransform form表单美化插件使用方法
2012/07/05 Javascript
从js向Action传中文参数出现乱码问题的解决方法
2013/12/29 Javascript
JavaScript中的值类型转换介绍
2014/12/31 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
js+html5实现可在手机上玩的拼图游戏
2015/07/17 Javascript
Backbone.js框架中Model与Collection的使用实例
2016/05/07 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
利用D3.js实现最简单的柱状图示例代码
2016/12/09 Javascript
Angularjs使用ng-repeat中$even和$odd属性的注意事项
2016/12/31 Javascript
jquery实现折叠菜单效果【推荐】
2017/03/08 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
vue中如何实现变量和字符串拼接
2017/06/19 Javascript
vue2组件之select2调用的示例代码
2017/10/12 Javascript
手把手教你使用vue-cli脚手架(图文解析)
2017/11/08 Javascript
vue-cli3 配置开发与测试环境详解
2019/05/17 Javascript
Vue Router history模式的配置方法及其原理
2019/05/30 Javascript
[08:54]《一刀刀一天》之DOTA全时刻18:十九支奔赴西雅图队伍全部出炉
2014/06/04 DOTA
Python编程之多态用法实例详解
2015/05/19 Python
Python建立Map写Excel表实例解析
2018/01/17 Python
使用tensorflow实现线性svm
2018/09/07 Python
几个适合python初学者的简单小程序,看完受益匪浅!(推荐)
2019/04/16 Python
Python Django的安装配置教程图文详解
2019/07/17 Python
Python代码注释规范代码实例解析
2020/08/14 Python
html5各种页面切换效果和模态对话框用法总结
2014/12/15 HTML / CSS
印度购物网站:TATA CLiQ
2017/11/23 全球购物
会展中心部门工作职责
2013/11/27 职场文书
支部组织生活会方案
2014/06/10 职场文书
群众路线教育实践活动的心得体会
2014/09/03 职场文书
2014年学生会生活部工作总结
2014/11/07 职场文书
2014年小学德育工作总结
2014/12/05 职场文书
毕业论文致谢格式模板
2015/05/14 职场文书
大学军训通讯稿
2015/07/18 职场文书
离婚协议书范文2016
2016/03/18 职场文书