2015-04-14 118 views
-2

我已經創建了一個外部腳本調用script.js保存在js文件夾中。不過,我不知道爲什麼它不工作。因此,我試過把它放到html文件中,它工作正常。所以我認爲這是缺少某些東西或者我不知道的問題。Html外部腳本不起作用

這是我的html代碼

<!DOCTYPE html> 
<html> 
    <head> 
    <title>...........</title> 

    <link href="css/style.css" type="text/css" rel="stylesheet" /> 
    <script src="js/script.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
    </head> 
    <body> 
     <button class="button">show</button> 
     <p>yo</p> 
    </body> 

JQuery的

 $(".button").click(function(){ 
    $("p").toggle(); 
}); 
+2

jquery需要先行嗎? –

+0

我可以推測,但沒有看到JS代碼,我不知道問題是什麼。看看你的JavaScript錯誤控制檯。它說什麼? – Quentin

回答

0

確保jQuery是第一次加載:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
<script src="js/script.js"></script> 

我也想提出這個剛剛閉幕</body>標記之前在你的HTML。

然後檢查JS文件夾與您寫入的HTML文件的相對位置。目前,該文件夾需要與HTML文件在目錄結構中處於相同的級別。

0

在腳本中,使用window.onload。該腳本可能在DOM實際完成加載之前觸發。

您可能還想將jQuery置頂,以便在腳本中的任何可能的jQuery代碼觸發之前完成加載。

0

嘗試在頁腳中加載JS。

您需要DOM中的元素才能選擇它們。
此外,在頁面底部包含外部js文件,它將HTTP請求的優先級提供給將呈現給客戶端的視覺顯示,而不是交互或動態的邏輯;

這是您想要的常見行爲。

0

如果你在你的JavaScript代碼中使用jQuery,請把它們按順序

<!DOCTYPE html> 
<html> 
<head> 
<title>...........</title> 

<link href="css/style.css" type="text/css" rel="stylesheet" /> 
<script  src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
<script src="js/script.js"></script> 

</head> 

如果不是你可以張貼在控制檯中的錯誤(使用Chrome按F12,看看在錯誤的情況下控制檯)

你可以檢查其他東西,js文件夾在你的html頁面所在的同一個目錄下?

告訴我們

+0

我將它存儲在C:\ xampp \ htdocs \ project \ js – yoadle

+0

它是xampp的問題嗎? – yoadle

+0

@yoadle這個目錄是你的html所在的目錄嗎? – DuSant