Archive

Posts Tagged ‘解决冲突’

让jquery与prototype兼容共存

June 15th, 2010 yakjuly No comments

让jquery与prototype共存,方法有多种,看需求选择你的方式。

我使用的方式是先加载jquery,因为有插件依赖jquery。

<%= javascript_include_tag "jquery", "formValidator_min", "formValidatorRegex" %>
<script type="text/javascript">
  var $j = jQuery.noConflict();
</script>
<%= javascript_include_tag :defaults %>

网上还流传了其他的方式,你自己根据需要加载的顺序选择使用哪种方式吧。

方式1:

 <html>
  <head>
    <script src="prototype.js"></script>
    <script src="jquery.js"></script>
    <script>
      jQuery.noConflict();  

      // Use jQuery via jQuery(...)
      jQuery(document).ready(function(){
        jQuery("div").hide();
      });  

      // Use Prototype with $(...), etc.
      $('someid').style.display = 'none';
    </script>
  </head>
  <body></body>
  </html>

方式2:

    <html>
     <head>
       <script src="prototype.js"></script>
       <script src="jquery.js"></script>
       <script>
         var $j = jQuery.noConflict();  

         // Use jQuery via $j(...)
         $j(document).ready(function(){
          $j("div").hide();
        });  

        // Use Prototype with $(...), etc.
        $('someid').style.display = 'none';
      </script>
    </head>
    <body></body>
    </html>

方式3:

    <html>
     <head>
       <script src="prototype.js"></script>
       <script src="jquery.js"></script>
       <script>
         jQuery.noConflict();  

         // Put all your code in your document ready area
         jQuery(document).ready(function($){
          // Do jQuery stuff using $
          $("div").hide();
        });  

        // Use Prototype with $(...), etc.
        $('someid').style.display = 'none';
      </script>
    </head>
    <body></body>
    </html>
Categories: jquery Tags: , ,