2013-06-29 95 views
0

我有一個包含js函數的大部分的網站,我想添加一個來自mootools的登錄表單。 我添加的形式和它的作品,但其他部位所需的文件,是阻止我知道這是JavaScript的衝突,這是我的頭文件:如何包含mootools js文件?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html lang="tr" > 
<head> 
    <meta http-equiv="content-type" content="text/xml; charset=utf-8" /> 
    <!--Site CSS--> 
    <link href="include-css/SCOREMIX.css" rel="stylesheet" type="text/css" /> 
    <!-- Latest Jquery Lib--> 
    <script type="text/javascript" src="include-js/jquery-1.8.3.js"></script> 
    <!-- Mootools - the core --> 
    <script type="text/javascript" src="include-js/mootools12.js"></script> 
    <!-- MooSlide (show/hide login form) --> 
    <script type="text/javascript" src="include-js/mooSlide2-moo12.js"></script> 
    <!--News scroller--> 
    <script type="text/javascript" src="include-js/jscroller-0.4.js"></script> 

    <!--timer for ticking at live games and to update information each minute--> 
    <script type="text/javascript" src="include-js/jquery_timer.js" ></script> 
    <!-- MY JS FILES--> 
    <script type="text/javascript" src="include-js/functions.js"></script> 
    <script type="text/javascript" src="include-js/script.js" ></script> 


    <script language="javascript" type="text/ecmascript"> 
    window.addEvent('domready',function(){ 
     var myLogin = new mooSlide2({ slideSpeed: 1500, fadeSpeed: 500, toggler:'login', content:'loginPanel', close: false, effects:Fx.Transitions.Bounce.easeOut , from:'top'}); 
     //optional: AutoStart the slider on page load: 
     //MyLogin.run(); 
     $('close').addEvent('click', function(e){ 
      e = new Event(e); 
      myLogin.clearit(); 
      e.stop(); 
     }); 
    }); 
    </script> 

</head> 

的腳本是MooTools的和所需要的文件加以註釋。

Uncaught TypeError: Object #<HTMLDocument> has no method 'ready' 

和: 當我運行的網站我得到這個錯誤

Uncaught TypeError: Object function (B,C){if(B&&B.$family&&B.uid){return B;}var A=$type(B);return($[A])?$[A](B,C,this.document):null;} has no method 'ajax' 

不要任何人可以幫助我知道我是否應該改變JS文件的順序,或者是有什麼我可以做什麼來阻止衝突?

P.S:當我改變標題中mootools文件的位置時,我得到不同的消息。

回答

1

jQuery 例如更換$,而是採用

$("div p").hide()使用jQuery("div p").hide();代替

http://api.jquery.com/jQuery.noConflict/

ASLO試試這個

var j = jQuery.noConflict(); 
    // Do something with jQuery 
    j("div p").hide(); 
    // Do something with another library's $() 
    $("content").style.display = 'none'; 
+0

抱歉,但它沒有工作 – Basel

+0

我的jQuery的一個巨大的文件和editation會很辛苦,我可以做編輯到摩托車呢?如何?並在哪裏 – Basel

+0

謝謝$ - > jQuery全局替換隻是修復了我在遊戲中的字符拖動問題,這意味着我現在可以說我支持Firefox! ;) – TilleyTech

0

嘗試更換爲了您的mootool js和jQuery腳本並再次檢查?

<script type="text/javascript" src="jquery-1.3.js"></script> 
    <script type="text/javascript"> 
     //no conflict jquery 
     jQuery.noConflict(); 
     //jquery stuff 
     (function($) { 
      $('p').css('color','#ff0000'); 
     })(jQuery); 
    </script> 
    <script type="text/javascript" src="moo1.2.js"></script> 
    <script type="text/javascript"> 
     //moo stuff 
     window.addEvent('domready',function() { 
      $$('p').setStyle('border','1px solid #fc0'); 
     }); 
    </script> 

嘗試使用這個,你的代碼

<!--Site CSS--> 
    <link href="include-css/SCOREMIX.css" rel="stylesheet" type="text/css" /> 

    <!--///// MOOTOOLS /////--> 
    <!-- Mootools - the core --> 
    <script type="text/javascript" src="include-js/mootools12.js"></script> 
    <!-- MooSlide (show/hide login form) --> 
    <script type="text/javascript" src="include-js/mooSlide2-moo12.js"></script>  
    <script type="text/javascript"> 
     window.addEvent('domready',function(){ 
      var myLogin = new mooSlide2({ slideSpeed: 1500, fadeSpeed: 500, toggler:'login', content:'loginPanel', close: false, effects:Fx.Transitions.Bounce.easeOut , from:'top'}); 
      //optional: AutoStart the slider on page load: 
      //MyLogin.run(); 
      $('close').addEvent('click', function(e){ 
       e = new Event(e); 
       myLogin.clearit(); 
       e.stop(); 
      }); 
     }); 
    </script> 

    <!--///// JQUERY /////--> 
    <!-- Latest Jquery Lib--> 
    <script type="text/javascript" src="include-js/jquery-1.8.3.js"></script> 
    <!--News scroller--> 
    <script type="text/javascript" src="include-js/jscroller-0.4.js"></script> 
    <!--timer for ticking at live games and to update information each minute--> 
    <script type="text/javascript" src="include-js/jquery_timer.js" ></script> 
    <!-- MY JS FILES--> 
    <script type="text/javascript" src="include-js/functions.js"></script> 
    <script type="text/javascript" src="include-js/script.js" ></script> 
    <script type="text/javascript"> 
     $(document).ready(function(){ 
      // jquery scripts        
     }); 
    </script> 
+0

但我的JavaScript函數是分開的,並且有很多函數(functions.js)和其他文件(script.js),它們在document.ready之後有腳本。如何將它們包含在我的頭文件中,以及如何使用匿名函數 – Basel

+0

再次檢查我的更新答案。順便說一句,你需要這條線嗎? ...

  • 11. 在HTML中包含MooTools
  • 12. 如何在js文件中包含qml文件
  • 13. 如何包含JavaScript(.js文件)文件2007
  • 14. 如何包含文件夾中的所有.js文件?
  • 15. 可以.js文件「包含」另一個.js文件
  • 16. 在另一個JS文件中包含JS文件
  • 17. 如何在.js中包含.js?
  • 18. 如何只包含js文件如果使用
  • 19. 如何包含頭文件
  • 20. 如何「包含」文件?
  • 21. jquery - 如何包含文件?
  • 22. 構建層不包含dojo/**/*。js文件
  • 23. 在cache.manifest中包含多個js文件?
  • 24. 在xhtml中包含外部JS文件
  • 25. 縮小包含路由的js文件
  • 26. 使用jQuery包含JS文件
  • 27. 包含JS文件的替代方法
  • 28. codeigniter包含css或js文件
  • 29. 在JQuery Mobile中包含JS文件
  • 30. 包含PHP文件的JS,Css