2
<p id="specialp">some content</p>
<script>
document.getElementById('specialp').onclick=alert('clicked');
</script>
我剛剛開始與JavaScript,我不明白爲什麼警告是頁面加載時執行,但不是當我單擊該段落。onclick事件 - 爲什麼JavaScript運行它onload
的處理工程,我希望當我把它內聯,就像這樣:
<p id="specialp" onclick="alert('clicked')" >some content</p>
不是alert()函數本身嗎?這是否意味着,如果以某種方式alert()返回true,則此方法將起作用? 另外,它爲什麼在頁面加載後執行? – Atheus 2012-04-27 18:30:04
'alert'是一個函數,但是你並沒有爲它分配函數,而是將表達式'alert('clicked')'分配給onclick對象。表達式作爲賦值的一部分進行評估。你在技術上與'var x = 4 + 2'沒有區別。該腳本在加載時運行,並將'6'分配給'x',而不是在稍後使用'x'時的點。 – Tejs 2012-04-27 18:36:57
如果我想在函數中使用元素的某個屬性,我將如何將參數中的對象傳遞給該函數,結果如何?我使用這個頁面上的所有元素,所以我不能使用getElementById()函數。 – Atheus 2012-04-27 18:53:36