DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> Javascript事件處理代碼的三種寫法
Javascript事件處理代碼的三種寫法
編輯:關於JavaScript     

1.作為HTML屬性值的事件處理程序


 HTML代碼
<input name="btn" type="button" id="btn" value="按鈕" onclick="alert('mzwu.com');" />
 


2.作為JavaScript屬性的事件處理程序


 HTML代碼
<input name="btn" type="button" id="btn" value="按鈕"  />
<script language="javascript">
document.getElementById("btn").onclick = function(){alert("mzwu.com");}
</script>
 


說明:可能受第一種方法的誤導,你會覺得應該寫成:document.getElementById("btn").onclick() = "alert('mzwu.com');",這樣寫是錯誤的!其實第一種方法隱式的創建了一個函數,使用下邊代碼可以說明這一點,因為它檢測出HTML屬性值其實是一個函數:


 HTML代碼
<input name="btn" type="button" id="btn" value="按鈕" onclick="alert(typeof(this.onclick));" />
 


上邊是用直接量來創建函數,改成用function()語句的寫法:


 HTML代碼
<input name="btn" type="button" id="btn" value="按鈕"  />
<script language="javascript">
function e()
{
 alert("mzwu.com");
}
document.getElementById("btn").onclick = e;
</script>
 


由此我們可引申出第三種方法。

3.第三種方法


 HTML代碼
<input name="btn" type="button" id="btn" value="按鈕"  />
<script language="javascript">
function document.all.btn.onclick()
{
 alert("mzwu.com");
}
</script>
 


說明:諸如此類的方法還有function document.onclick(){},但這種方法在IE、FF中測試只有IE下可行,再改成function document.getElementById("btn").onclick(){}在IE、FF下都不行了,提示缺少標識符,其實這也不難解釋,因為JavaScript標識符中本來就不允許出現點號,用document.getElementById("btn").onclick做標識符顯然是錯誤的,但document.all.btn.onclick卻又可以實在有點讓人費解。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved