2013-10-22 158 views
-1

我想開始使用jQuery,我在YouTube上關注的教程中找到了這段代碼。在我看到的評論中,它不適用於很多用戶,但沒有真正的修復。爲什麼這個簡單的jQuery代碼不起作用?

<!doctype html> 
<html> 
<head> 
    <meta charset=utf-8> 
</head> 
<body> 
    <p onclick="$(this).hide();">this is a paragraph</p> 
    <script source="js/jquery.js"></script> 
</body> 
</html> 

在這個頁面的文件夾,我創建了一個子文件夾名爲JS那裏我救了的jquery.js文件從jquery.com

+0

檢查你的控制檯,你看到任何錯誤? (Chrome/IE上的F12) – tymeJV

+0

您必須在嘗試運行jQuery代碼時加載jQuery _before_。 – j08691

+0

檢查是否正在加載jquery文件,在運行腳本之前也包含它 – sven

回答

0

您正在嘗試使用jQuery複製代碼的jQuery已被列入前。

在使用$jQuery之前必須出現<script src='jquery.js'></script>。通常,您將其包含在文檔的<head>中。

你也應該從你的DOM分離你的JavaScript,通過移動事件綁定到<head>的歡迎,並在$(document).ready塊包裹其中:

<head> 
    <meta charset=utf-8> 

    <script src="js/jquery.js"></script> 
    <script> 
     $(document).ready(function() { 
      $('p').click(function() { 
       $(this).hide(); 
      }); 
     }); 
    </script> 
</head> 
+0

在教程中,他說,寫在頁面末尾,就在 – GabAntonelli

+0

@Gabz教程是錯誤的。 – meagar

+0

我嘗試了你的建議,但沒有奏效。在谷歌C​​hrome控制檯它說 「Uncaught ReferenceError:$未定義」 – GabAntonelli

1

向前一步是不要把代碼內嵌帶有標記...

<!doctype html> 
<html> 
<head> 
    <meta charset=utf-8> 
</head> 
<body> 
    <p>this is a paragraph</p> 
    <script source="js/jquery.js"></script> 
    <script> 
     $(function() 
      $('p').on('click', function() { 
       $(this).hide(); 
      }); 
     }); 
    </script> 
</body> 
</html> 
0

JavaScript的一個最佳實踐是始終按照依賴性的順序將您的依賴項加載到您的<head>標記中。在這種情況下,您首先放置您的jQuery引用,然後放置任何引用jQuery的文件。

<!doctype html> 
<html> 
<head> 
    <meta charset=utf-8> 
    <script source="js/jquery.js"></script> 
</head> 
<body> 
    <p onclick="$(this).hide();">this is a paragraph</p> 

</body> 
</html> 

這應該可以解決您的問題。

+1

這不是一個「最佳實踐」,這是一個很難的技術要求。實際上,儘可能將腳本放在底部是一種最佳做法。在使用它們之前,你必須包含腳本的基線依賴關係。 – meagar

相關問題