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 相关文章推荐
javascript编程起步(第五课)
Jan 10 Javascript
$.format,jquery.format 使用说明
Jul 13 Javascript
checkbox设置复选框的只读效果不让用户勾选
Aug 12 Javascript
jquery实现图片灯箱明暗的遮罩效果
Nov 15 Javascript
使用javascript做的一个随机点名程序
Feb 13 Javascript
javascript实现复制与粘贴操作实例
Oct 16 Javascript
javascript实现控制div颜色
Jul 07 Javascript
JS获取文件大小方法小结
Dec 08 Javascript
详解ES6中的let命令
Apr 05 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
Sep 19 Javascript
如何利用JS将手机号中间四位变成*号
Sep 29 Javascript
使用js获取身份证年龄的示例代码
Dec 11 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获取Google AJAX Search API 数据的代码
2010/03/12 PHP
PHP中使用xmlreader读取xml数据示例
2014/12/29 PHP
在PHP站点的页面上添加Facebook评论插件的实例教程
2016/01/08 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
2021/03/09 PHP
javascript 类方法定义还是有点区别
2009/04/15 Javascript
javascript与CSS复习(二)
2010/06/29 Javascript
ajax 缓存 问题 requestheader
2010/08/01 Javascript
JavaScript中数组的排序、乱序和搜索实现代码
2011/11/30 Javascript
JS打开图片另存为对话框实现代码
2012/12/26 Javascript
JS控制日期显示的小例子
2013/11/23 Javascript
javascript放大镜效果的简单实现
2013/12/09 Javascript
加载列表时jquery获取ul中第一个li的属性
2014/11/02 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
实现JavaScript的组成----BOM和DOM详解
2016/05/18 Javascript
移动端jQuery修正Web页面滑动时div问题的两则实例
2016/05/30 Javascript
jQuery实现公告新闻自动滚屏效果实例代码
2016/07/14 Javascript
简易的JS计算器实现代码
2016/10/18 Javascript
详解tween.js 中文使用指南
2018/01/05 Javascript
详解vue中async-await的使用误区
2018/12/05 Javascript
vue仿淘宝滑动验证码功能(样式模仿)
2019/12/10 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
微信小程序淘宝首页双排图片布局排版代码(推荐)
2020/10/29 Javascript
小程序角标的添加及绑定购物车数量进行实时更新的实现代码
2020/12/07 Javascript
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
[00:47]TI7不朽珍藏III——沙王不朽展示
2017/07/15 DOTA
Python利用operator模块实现对象的多级排序详解
2017/05/09 Python
python实现决策树C4.5算法详解(在ID3基础上改进)
2017/05/31 Python
Python 读取指定文件夹下的所有图像方法
2018/04/27 Python
python爬取基于m3u8协议的ts文件并合并
2019/04/26 Python
python中加背景音乐如何操作
2020/07/19 Python
HTML5之SVG 2D入门9—蒙板及mask元素介绍与应用
2013/01/30 HTML / CSS
国庆横幅标语
2014/10/08 职场文书
单位考核聘任报告
2015/03/02 职场文书
pytorch 运行一段时间后出现GPU OOM的问题
2021/06/02 Python
《艾尔登法环》1.03.3补丁上线 碎星伤害调整
2022/04/07 其他游戏