jQuery noConflict()的应用实例

jQuery noConflict()的应用实例

noConflict()是jQuery中的一个内置函数,jQuery一般使用”“符号作为快捷标识。有许多javascript库,如Angular Js, Ember, Knockout等。现在,如果其他的jQuery框架开始使用”“符号作为快捷方式,那么就会产生冲突,其中的一个框架可能会停止工作。因此,我们实现了noConflict方法。

语法:

$.noConflict();

参数:它不接受任何参数。
返回值:它不返回任何东西。
冲突是如何产生的?
示例:

src="prototype.js"
src="jquery.js"

在上面的例子中,在同一个文件中使用了两个JavaScript库,它们都使用相同的”“符号来选择元素。现在冲突出现了,可能其中一个库无法使用”“符号访问元素。
noConflict()方法释放了对”$”快捷键标识符的控制,这样其他脚本就可以使用它。
产生冲突的jQuery代码:

<html>
  
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/
                  jquery/3.3.1/jquery.min.js"></script>
    <script>
        jq(document).ready(function() {
            jq("button").click(function() {
                jq("p").text("jQuery is still working!");
            });
        });
    </script>
</head>
  
<body>
    <p style="color:green">This will show how to save
                           reference and use them.</p>
    <button>Click Me.!</button>
</body>
  
</html>

输出:
在点击按钮之前-
jQuery noConflict()的应用实例
点击按钮后-
jQuery noConflict()的应用实例
这里的输出在点击按钮之前和之后都是一样的,因此存在着冲突。
jQuery代码使用noConflict()函数来克服这种冲突:

<html>
  
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script>
        //Here noConflict() reference is saved to a variable
        var jq = $.noConflict();
        jq(document).ready(function() {
            jq("button").click(function() {
                jq("p").text("jQuery is still working!");
            });
        });
    </script>
</head>
  
<body>
    <p style="color:green">This will show how to save 
                           reference and use them.</p>
    <button>Click Me.!</button>
</body>
  
</html>

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程