JQuery_JQuery冲突解决

最近在看《锋利的JQuery》感觉这本书讲的还不错。

我们在项目中除了JQuery 有可能要用到其他的JavaScript 库(Ext.js, prototype)时,有可能会与原来的JQuery 库冲突,下面记录了几个解决方法,供大家参考,mark一下

方法一  自定义快捷方式

(1) 使用JQuery作为调用 JQuery的快捷方式

<script>
        jQuery.noConflict();
        jQuery(function(){
            var $test = jQuery('#test');

            //jQuery获取元素内容
            console.log("第一种冲突解决方法 "+$test.html());

            //javaScript获取元素内容
            var dom = $test.get(0);
            for(var i = 0; i<dom.childNodes.length; i++){
                if(dom.childNodes[i].nodeType == 3){
                    console.log(dom.childNodes[i].nodeValue);
                }
            }
        });
    </script>

(2)使用自定义的符号作为快捷方式

 <script>
        var $j = jQuery.noConflict();
        $j(function(){
            //jQuery获取元素内容
            console.log("第二种冲突解决方法 "+$j('#test').html());
        });
    </script>

方法二 在函数内部使用JQuery方法

(1)

<script>
        jQuery.noConflict();
        jQuery(function($){
            //jQuery获取元素内容
            console.log("第三种冲突解决方法 "+$('#test').html());
        });
    </script>

(2)

<script>
        jQuery.noConflict();
        (function($){
            $(function(){
                //jQuery获取元素内容
                console.log("第四种冲突解决方法 "+$('#test').html());
            });
        })(jQuery);
    </script>

整体测试代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>jQuery冲突解决</title>
    <script src="js/jquery-1.11.3.js"></script>
    <script>
        jQuery.noConflict();
        jQuery(function(){
            var $test = jQuery('#test');

            //jQuery获取元素内容
            console.log("第一种冲突解决方法 "+$test.html());

            //javaScript获取元素内容
            var dom = $test.get(0);
            for(var i = 0; i<dom.childNodes.length; i++){
                if(dom.childNodes[i].nodeType == 3){
                    console.log(dom.childNodes[i].nodeValue);
                }
            }
        });
    </script>
</head>
<body>
    <div id="test">这是一个测试的节点</div>

    <script>
        var $j = jQuery.noConflict();
        $j(function(){
            //jQuery获取元素内容
            console.log("第二种冲突解决方法 "+$j('#test').html());
        });
    </script>

    <script>
        jQuery.noConflict();
        jQuery(function($){
            //jQuery获取元素内容
            console.log("第三种冲突解决方法 "+$('#test').html());
        });
    </script>

    <script>
        jQuery.noConflict();
        (function($){
            $(function(){
                //jQuery获取元素内容
                console.log("第四种冲突解决方法 "+$('#test').html());
            });
        })(jQuery);
    </script>
</body>
</html>
时间: 2024-10-10 11:49:18

JQuery_JQuery冲突解决的相关文章

Git的冲突解决过程

下面图是我总结一次提交遇到冲突解决的过程. 1. 把本地工作区的修改提交到本地仓库 2. 从远程仓库拉取代码,与本地仓库合并(pull = fetch + merge) 3. 本地仓库的代码推送回工作区,包括confilct部分 4. 解决冲突,然后重新commit到本地仓库 5. push到远程仓库,完成一次有冲突的提交

双击和单击事件冲突解决方法

双击和单击事件冲突解决方法:关于单击事件和双击事件,如果单独拿出来都是非常简单,这里也就不多介绍了,具体可以参阅jQuery的click事件和jQuery的dblclick事件一章节,但是如果同一个元素同时绑定了单击事件和双击事件,那么就会造成冲突现象,比如我们双击此元素指向触发双击事件,但是也完全满足单击事件的条件,不但双击事件触发了,单击事件同样也会被触发,下面就通过代码实例介绍一下如何解决它们的冲突问题,代码如下: <!DOCTYPE html> <html> <hea

(转)ViewPager,ScrollView 嵌套ViewPager滑动冲突解决

ViewPager,ScrollView 嵌套ViewPager滑动冲突解决 本篇主要讲解一下几个问题 粗略地介绍一下View的事件分发机制 解决事件滑动冲突的思路及方法 ScrollView 里面嵌套ViewPager导致的滑动冲突 ViewPager里面嵌套ViewPager 导致的滑动冲突 轮播图的几种实现方式 先看一下效果图 ScrollView里面嵌套ViewPager ViewPager里面嵌套ViewPager View的 事件分发机制 这篇博客大打算详细讲解View的事件分发机制

svn conflict 冲突解决

转自:http://www.gezila.com/tutorials/17290.html 目录: 1. 同一处修改文件冲突 1.1. 解决方式一 1.2. 解决方式二 1.3. 解决总结 2. 手动解决冲突 2.1. 冲突背景1 2.2. 冲突背景2 2.3. 冲突解决 1. 同一处修改文件冲突 开发人员都知道代码管理工具是开发中一个必不可少的工具,这里也不废话详细介绍了.不管你个人喜欢git还是svn还是其他,但还有一大部分公司在使用svn做代码管理工具.这里详细介绍下SVN提交文件时冲突问

apache与IIS共用80端口冲突解决方法

如果同一台电脑安装了apache和iis,会提示80端口冲突,如何解决apache与iis 80端口冲突的问题呢,并且同时使用apache和iis 将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理. 在httpd.conf里面,取消下面四行的注释: LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_connect_module modules/mod_proxy_connec

[BetterExplained]亲密关系中的冲突解决

一般来说,解决冲突的办法是两人都不越界要求对方,尊重对方的意愿,但一旦双方皆认为自己合理,冲突却不可避免的时候,就必须各自退回到尊重对方的自由. 但其实这也不是问题的终极解决之道,因为这会导致一旦冲突发生,两人就退回到自己的领地,制造出冷战气氛来,“尊重对方”说起来容易,做起来着实没有那么容易. 这里有一个更好的方案,简言之就是两人都将双方看成一个利益共同体. 现实生活中人们其实很难将他人的利益真正放在心上,不过亲密关系中的人如果想最优化相处的话还必须得这么做,因为本身两人的利益就是一个整体.

sublime text2打开控制台快捷键ctrl+`冲突解决

sublime text2 打开控制台(Show Console)的方法: View -> Show Console 快捷键是: ctrl+`(数字1左边的按键) 但是有些windows用户可能会出现快捷键无效的问题, 一般就是和系统快捷键冲突了, 我的问题就是和QQ拼音的快捷键冲突了,我们需要把系统的ctrl+`的快捷键去掉 和QQ拼音快捷键冲突解决方法如下: 打开QQ拼音的属性设置, 找到输入法管理 将热键切换至QQ拼音 前的勾选去掉,或者改一个别的快捷键 吐槽: QQ拼音默认是ctrl+~

Android中View类OnClickListener和DialogInterface类OnClickListener冲突解决办法

如下面所示,同时导入这两个,会提示其中一个与另一个产生冲突. 1 import android.view.View.OnClickListener; 2 import android.content.DialogInterface.OnClickListener; 其实,当我们用某个Listener时,不一定就要import它,直接用全名去定义就不需要import了,例如 1 mButton1.setOnClickListener(new OnClickListener() 2 { 3 4 @O

IIS6 2.0 4.0 冲突解决 &#39;c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\xxx&#39; -- &#39;Access is denied. &#39;

今天在阿里云虚拟机上部署新站点后出现下面的错误: Compiler Error Message: CS0016: Could not write to output file 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\xx' -- 'Access is denied. ' 找遍了网上的资料最后总结为以下几步:: Cleaned the "C:\Windows\Microsoft.NE