2016-06-15 65 views
0

工作,我有一個彈出式模態,我需要的時候,以確認用戶將做了一定的作用:爲什麼我的jQuery的模態時不會鏈接到這些.js文件

$(document).ready(function(){ 
    $("#button").click(function(){ 
     $("#the-dialog").dialog({ 
     resizable: false, 
     height: 140, 
     modal: true, 
     buttons:{ 
      "Option One": function(){ 
       //Perform Action 
       $(this).dialog("close"); 
       }, 
      Cancel: function(){ 
       //Do nothing 
       $(this).dialog("close"); 
       } 
      } 
     }); 
    }); 
}); 

此模式需要這兩個鏈接工作:

<script src="//code.jquery.com/jquery-1.12.4.js"></script> 

<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> 

它工作正常,當我在我的測試頁上運行它。現在我試圖將它集成到我的主頁面,突然它不起作用,當我刪除這兩個鏈接,它突然工作正常。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script src="js/jquery.js"></script> 

這是爲什麼發生?

+0

你會得到什麼錯誤?而jQuery的版本是不同的。 – j08691

+1

從我可以看到你正在加載3個不同的jQuery腳本。只需選擇最新的一個以避免任何衝突。 – Spluf

+0

@ j08691我收到'$(...)。對話框不是函數' – prifs

回答

1

爲了延長我的解釋了一下,要裝載3個不同的jQuery的腳本,其中至少有2個是不同的版本,以及:

<script src="//code.jquery.com/jquery-1.12.4.js"></script> // v: 1.12.4 

<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> //this is ok, it's jQuery UI which extends jQuery 

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> // v: 1.4.2 
<script src="js/jquery.js"></script> //don't know which versions is this one 

你的模式不工作的原因(我我敢肯定,如果你繼續深入研究,這不是唯一不可行的),那就是你可能在它們之間有一些衝突。

上傳3個版本的相同腳本是沒有意義的,除非你想在你的應用程序中有一堆bug。只要選擇,最好是最新的,因爲這很可能適用於所有情況。

還有一件事要確定的是,您選擇的第一個jquery腳本是第一個加載的(所以只需確保是頭中的第一個腳本)。

+0

謝謝,我還是新編程,我不知道這種東西 – prifs

0

你需要在你的腳本的頂部只加載一個jQuery的庫,所有其他的下面去一個

0

在您的文章最後兩行應該被刪除。他們正在加載舊版本的JQuery。你只需要加載一次JQuery和一次JQuery UI,這樣你的文章中的前兩個腳本標記就是你所需要的。

0

只應使用這兩個腳本:

<script src="//code.jquery.com/jquery-1.12.4.js"></script> 
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> 

相反的兩種:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script src="js/jquery.js"></script> 

在前兩,你是指你的頁面到位於外網2個腳本(代碼.jquery.com)。

第二個:第一個引用外部網站(ajax.googleapis.com),第二個引用到您的腳本文件夾,因此您必須下載腳本,將它放入您的腳本文件夾中,然後添加對它的引用。

如果您希望腳本依賴於其他服務器或者您想要下載它們並將您的項目引用到您下載的腳本中,您首先需要做出決定。

如果您的頁面上包含所有4個鏈接,肯定不會工作,因爲您引用了相同的腳本兩次,您需要一個用於jquery的腳本,另一個用於jquery-ui。

請注意,jquery腳本總是必須是第一個,因爲jquery-ui基於常規的jquery。

相關問題