我的答案起初可能看起來很複雜,但我確實認爲從一個好的概念開始是健康的,會讓事情變得更愉快。學習工具的一個常見問題實際上是他們將自己提升爲「快速」學習方式。你可以從他們身上獲得一些好處,但是有一些警告。如果跳過太多步驟,學習會更困難。
HTML在設計上用於描述頁面的表示,而JavaScript則是用於與該頁面交互的設計。
內聯JavaScript是一種不好的做法,通常會導致您遇到的問題。這裏內聯意味着你直接把交互式代碼放在HTML演示文稿中。如果你這樣做,你很快就會發現這部分HTML變得混亂。然後,由於>
,"
和'
都在相同的地方,所以看起來很難直觀地處理分隔符。
內聯javascript的另一個問題是它混合了兩個概念:交互和表示。 HTML應該只用於演示。
這樣一來,你可以編輯代碼,使它看起來像這樣:
HTML
<!DOCTYPE html>
<html>
<body>
<p id="demo">Hello</p>
<button id="btn" type="button">Try it</button>
<script>
document.getElementById('btn').onclick = function() {
document.getElementById('demo').innerHTML = 'Hey There';
}
</script>
</body>
</html>
它什麼時候該文件加載時,它會以交互方式的操作關聯您的按鈕,如果在用戶的瀏覽器中啓用了JavaScript。如果不是,頁面不會失敗,它會被降級。在該示例中,演示文稿(html)與交互(腳本)完全分離。作爲獎勵,沒有更多的雙引號或單引號。
對於腳本部分,我個人喜歡使用它多一點,所以它更容易使用和閱讀。
事情是這樣的:
的JavaScript
_e('btn').onclick = function() {
_e('demo').innerHTML = 'Hey There';
}
function _e(id) {
return document.getElementById(id);
}
甚至更好:
的JavaScript
_e('btn').addEventListener('click', function() {
_e('demo').innerHTML = 'Hey There';
}, false);
function _e(id) {
return document.getElementById(id);
}
的最後一個版本都會電子在你的按鈕上當你click
時,請明確說明你的意圖。這實際上使你很清楚你打算如何處理你的按鈕。
我希望這有助於和好運:)
在Firefox中,右鍵 - >檢查元素顯示'<按鈕類型= 「按鈕」 的onclick = 「的document.getElementById(」 演示 「)。innerHTML的=」 嘿有「」=「」>嘗試一下'。 –