如何使用jquery noConflict给出示例

时间:2014-07-29 04:02:55

标签: javascript jquery jquery-ui

我是使用jquery的新手。我需要在代码库中使用第三方发送的jquery js文件。不幸的是,它与已经使用的lib冲突。我试图使用noConflict代码,但js文件中的函数不能识别相同。有人可以帮我在第三方提供的js文件中使用noConflict。以下是示例:

    <script language="javascript" src="jquery-1.10.1.min.js"></script>
    <script language="javascript" src="thirdparty.class.js"></script> //this is third party js that uses jquery as well

    <script language="javascript">
      $(document).ready(function() {
        var test = new Test({ 
          baseUrl: 'http://example.com', 
          interval: 15000,
          testId: 8,

        });
      });
    </script>

below is the test.class.js sample file

function Test(parameters)
{
  if (parameters == undefined)
  {
    console.log("parameters must be defined");
    return;
  }

  if (parameters.baseUrl == undefined)
  {
    console.log("base url must be defined");
    return;
  }

  //complete code is not posted
}

无论如何我可以避免在我的代码和第三方js中使用jquery“$”吗?

感谢任何帮助。 TIA

2 个答案:

答案 0 :(得分:0)

尝试以下代码,

jQuery(function($) {
    $(document).ready(function() {
        var test = new Test({ 
          baseUrl: 'http://example.com', 
          interval: 15000,
          testId: 8,

        });
    });
});

并且您也可以始终使用jQuery代替$

jquery.min.js Conflicts

答案 1 :(得分:0)

使用noConflict()方法为jQuery变量指定新名称:

示例

var test=$.noConflict(); 

 test(document).ready(function() {
    var test = new Test({ 
      baseUrl: 'http://example.com', 
      interval: 15000,
      testId: 8,

    });
  });

如果您有一块使用$快捷方式的jQuery代码,并且您不想全部更改它,则可以将$ sign作为参数传递给ready方法。这允许你在这个函数中使用$访问jQuery - 在它之外,你将不得不使用&#34; jQuery&#34;:

 $.noConflict();
  jQuery(document).ready(function($)
  {
   var test = new Test({ 
    baseUrl: 'http://example.com', 
   interval: 15000,
   testId: 8,

    });
 });