什么是jQuery.noConflict

什么是jQuery.noConflict

在Jquery中,符号只是JQuery的一个别名。这意味着(“p”)和JQuery.(“p”),两者完全相同。我们可以使用其中之一。这个符号被许多Javascript库用作函数名或变量名。在开发时,很明显,我们将与JQuery一起使用许多库。可能有一个机会,任何其他库也在使用符号。在这种情况下,当两个框架使用相同的符号时,一个可能停止工作。

为了解决这个问题,JQuery实现了noConflict()方法。noConflict()方法返回的控制权,以便其他框架/库可以使用它。

语法:

$.noConflict();

参数:它不接受任何参数。

返回值:它返回一个对jQuery的引用。

例子1: jQuery代码显示noConflicct()方法的工作情况。

<!DOCTYPE html>
<html lang="en">
  
<head>
    <!-- Using jquery library -->
    <script src=
"https://code.jquery.com/jquery-git.js">
    </script>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" 
          content="width=device-width, initial-scale=1.0">
</head>
  
<body>
    <p>para-1</p>
  
    <p>para-2</p>
  
    <p>para-3</p>
  
    <p>para-4</p>
  
    <p>para-5</p>
  
  
    <script>
        // Calling with sign
        console.log(("p").length)
  
        // Releasing the control of         .noConflict();
  
        // Calling again with sign
        console.log(("p").length)
    </script>
</body>
  
</html>

输出:这里,你可以看到,在释放了对$符号的控制后,我们不能再使用$符号了。这就是为什么当我们再次用$符号调用length属性时收到了错误。所以基本上,在调用noConflict()方法后,我们必须使用jQuery而不是$符号。而$符号将被其他库所使用。

什么是jQuery.noConflict?

示例 2:

<!DOCTYPE html>
<html lang="en">
  
<head>
    <!-- using jquery library -->
    <script src=
"https://code.jquery.com/jquery-git.js">
    </script>
</head>
  
<body>
  <p>para-1</p>
  
  <p>para-2</p>
  
  <p>para-3</p>
  
  <p>para-4</p>
  
  <p>para-5</p>
  
  <script>
      .noConflict();
      console.log(jQuery("p").length);
      // Code that uses other library's can follow here.
  </script>
</body>
  
</html>

输出: 好的,由于我们的代码中存在其他库,我们不能使用$符号来表示JQuery代码,而且我们很懒,所以我们不想在每一行都写jQuery。那么,为什么不呢,为jQuery创建我们自己的别名。

**5**

创建jQuery的别名: noConflict()方法返回一个对jQuery的引用,我们可以将其存储在一个变量中供将来使用。

示例 3:

<!DOCTYPE html>
<html lang="en">
  
<head>
   <!-- using jquery library -->
   <script src=
"https://code.jquery.com/jquery-git.js">
   </script>
</head>
  
<body>
  <p>para-1</p>
  
  <p>para-2</p>
  
  <p>para-3</p>
  
  <p>para-4</p>
  
  <p>para-5</p>
  
  <script>
      console.log(("p").length)
      let gk =.noConflict();
      console.log(gk("p").length);
  </script>
</body>
  
</html>

输出:

5
5

案例: Rohan正在使用jQuery做他的学校项目,他已经写了大约100行jQuery的代码。他即将完成他的项目,但是他想为他的项目增加一些功能。所以他添加了一些同样使用$符号的javascript库,所以他使用了noConflict()方法。但是当他添加了noconflict()方法后,他意识到他必须用jQuery替换所有以前的$符号。

不…我们不需要用jQuery改变每一个$符号。

在一个函数中使用$符号:如果我们有一个使用符号的函数,我们可以把符号作为一个参数传递给该函数。这将允许我们在该函数中使用$符号,但我们仍然必须在该函数之外使用jQuery。

示例:

<!DOCTYPE html>
<html lang="en">
  
<head>
    <!-- using jquery library -->
    <script src=
"https://code.jquery.com/jquery-git.js">
    </script>
</head>
  
<body>
  <p>para-1</p>
  
  <p>para-2</p>
  
  <p>para-3</p>
  
  <p>para-4</p>
  
  <p>para-5</p>
  
  <script>
    .noConflict();
    jQuery(document).ready(function () {
      console.log($("p").length);
    });
  </script>
</body>
  
</html>

输出:

5

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程