使用$ Alias而不创建全局冲突

时间:2012-10-08 12:59:30

标签: jquery

为了学习jQuery,我将阅读“Jquery:CookBook”一书。在本书中,我经历了在不创建全局冲突的情况下使用$ alias of“jQuery”的概念。按照本书的说法,语法如下:

  <html>
  <head> 
   <script type="text/javascript" src="jquery-min.js">
   </script>
   </head>
   <body>
   <script>
   (function($){         //function to create private scope with $ parameter
        alert("Hello");    //private scope and using $ without worry of conflict
    })(jQuery); 
   </script>
</body>
</html>      

但上面的代码不起作用,firebug显示语法错误。我无法根据上述概念找到任何文件。任何人都可以告诉我如何正确使用上述语法。谢谢你提前。我知道上面的语法看起来很怪异。但是这本书说:

所有jQuery代码都可以封装在以下自调用中 功能:

(function($){ //function to create private scope with $ parameter
//private scope and using $ without worry of conflict
})(jQuery); //invoke nameless function and pass it the jQuery object

1 个答案:

答案 0 :(得分:0)

经过一些努力后,我终于得到了答案。这里有一个jquery API,名为jQuery.noConflict()。以下是使用它的方法:

    <!doctype html>
        <html>
            <head>
                <title>No conflict</title>
                <script src="jquery.js"></script>
            </head>

            <body>
            <p>Click Here </p>

            <script type="text/javascript">
            $.noConflict();
           jQuery(document).ready(function($) {

   // Code that uses jQuery's $ can follow here.            

    $('p').click(function(){

                alert("Hello");
                });

      });


            </script>

            </body>
        </html>