JS技巧:JS教程:window.event對象
當前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
window.event對象 event代表事件的狀態(tài),例如觸發(fā)event對象的元素、鼠標的位置及狀態(tài)、按下的鍵等等。 event對象只在事件發(fā)生的過程中才有效。 event的某些屬性只對特定的事件有意義。比如,fromElement 和 toElement 屬性只對 onmouseover 和 onmouseout 事件有意義。 例子 下面的例子檢查鼠標是否在鏈接上單擊,并且,如果shift鍵被按下,就取消鏈接的跳轉(zhuǎn)。 Java代碼 1.<HTML> 2.<HEAD><TITLE>Cancels Links</TITLE> 3.<SCRIPT LANGUAGE="JScript"> 4.function cancelLink() { 5.if (window.event.srcElement.tagName == "A" && window.event.shiftKey) 6.window.event.returnValue = false; 7.} 8.</SCRIPT> 9.<BODY onclick="cancelLink()"> 下面的例子在狀態(tài)欄上顯示鼠標的當前位置。 Java代碼 1.<BODY onmousemove="window.status = 'X=' + window.event.x + ' Y=' + window.event.y"> 屬性: altKey, button, cancelBubble, clientX, clientY, ctrlKey, fromElement, keyCode, offsetX, offsetY, propertyName, returnValue, screenX, screenY, shiftKey, srcElement, srcFilter, toElement, type, x, y -------------------------------------------------------------------------------- 1.altKey 描述: 檢查alt鍵的狀態(tài)。 語法: event.altKey 可能的值: 當alt鍵按下時,值為 TRUE ,否則為 FALSE 。只讀。 2.button 描述: 檢查按下的鼠標鍵。 語法: event.button 可能的值: 0 沒按鍵 1 按左鍵 2 按右鍵 3 按左右鍵 4 按中間鍵 5 按左鍵和中間鍵 6 按右鍵和中間鍵 7 按所有的鍵 這個屬性僅用于onmousedown, onmouseup, 和 onmousemove 事件。對其他事件,不管鼠標狀態(tài)如何,都返回 0(比如onclick)。 3.cancelBubble 描述: 檢測是否接受上層元素的事件的控制。 語法: event.cancelBubble[ = cancelBubble] 可能的值: 這是一個可讀寫的布爾值: TRUE 不被上層原素的事件控制。 FALSE 允許被上層元素的事件控制。這是默認值。 例子: 下面的代碼片斷演示了當在圖片上點擊(onclick)時,如果同時shift鍵也被按下,就取消上層元素(body)上的事件onclick所引發(fā)的showSrc()函數(shù)。 Java代碼 1.<SCRIPT LANGUAGE="JScript"> 2.function checkCancel() { 3.if (window.event.shiftKey) 4.window.event.cancelBubble = true; 5.} 6.function showSrc() { 7.if (window.event.srcElement.tagName == "IMG") 8.alert(window.event.srcElement.src); 9.} 10.</SCRIPT> 11.<BODY onclick="showSrc()"> 12.<IMG onclick="checkCancel()" src="/sample.gif"> 4.clientX 描述: 返回鼠標在窗口客戶區(qū)域中的X坐標。 語法: event.clientX 注釋: 這是個只讀屬性。這意味著,你只能通過它來得到鼠標的當前位置,卻不能用它來更改鼠標的位置。 5.clientY 描述: 返回鼠標在窗口客戶區(qū)域中的Y坐標。 語法: event.clientY 注釋: 這是個只讀屬性。這意味著,你只能通過它來得到鼠標的當前位置,卻不能用它來更改鼠標的位置。 6.ctrlKey 描述: 檢查ctrl鍵的狀態(tài)。 語法: event.ctrlKey 可能的值: 當ctrl鍵按下時,值為 TRUE ,否則為 FALSE 。只讀。 7.fromElement 描述: 檢測 onmouseover 和 onmouseout 事件發(fā)生時,鼠標所離開的元素。 參考:18.toElement 語法: event.fromElement 注釋: 這是個只讀屬性。 8.keyCode 描述: 檢測鍵盤事件相對應(yīng)的內(nèi)碼。 這個屬性用于 onkeydown, onkeyup, 和 onkeypress 事件。 語法: event.keyCode[ = keyCode] 可能的值: 這是個可讀寫的值,可以是任何一個Unicode鍵盤內(nèi)碼。如果沒有引發(fā)鍵盤事件,則該值為 0 。 9.offsetX 描述: 檢查相對于觸發(fā)事件的對象,鼠標位置的水平坐標 語法: event.offsetX 10.offsetY 描述: 檢查相對于觸發(fā)事件的對象,鼠標位置的垂直坐標 語法: event.offsetY 11.propertyName 描述: 設(shè)置或返回元素的變化了的屬性的名稱。 語法: event.propertyName [ = sProperty ] 可能的值: sProperty 是一個字符串,指定或返回觸發(fā)事件的元素在事件中變化了的屬性的名稱。 這個屬性是可讀寫的。無默認值。 注釋: 你可以通過使用 onpropertychange 事件,得到 propertyName 的值。 例子: 下面的例子通過使用 onpropertychange 事件,彈出一個對話框,顯示 propertyName 的值。 Java代碼 1.<HEAD> 2.<SCRIPT> 3.function changeProp() 4.{ 5.btnProp.value = "This is the new VALUE"; 6.} 7. 8.function changeCSSProp() 9.{ 10.btnStyleProp.style.backgroundColor = "aqua"; 11.} 12.</SCRIPT> 13.</HEAD> 14.<BODY> 15.<P>The event object property propertyName is 16.used here to return which property has been 17.altered.</P> 18. 19.<INPUT TYPE=button ID=btnProp onclick="changeProp()" 20.VALUE="Click to change the VALUE property of this button" 21.onpropertychange='alert(event.propertyName+" property has changed value")'> 22.<INPUT TYPE=button ID=btnStyleProp 23.onclick="changeCSSProp()" 24.VALUE="Click to change the CSS backgroundColor property of this button" 25.onpropertychange='alert(event.propertyName+" property has changed value")'> 26.</BODY> 12.returnValue 描述: 設(shè)置或檢查從事件中返回的值 語法: event.returnValue[ = Boolean] 可能的值: true 事件中的值被返回 false 源對象上事件的默認操作被取消 例子見本文的開頭。 13.screenX 描述: 檢測鼠標相對于用戶屏幕的水平位置 語法: event.screenX 注釋: 這是個只讀屬性。這意味著,你只能通過它來得到鼠標的當前位置,卻不能用它來更改鼠標的位置。 14.screenY 描述: 檢測鼠標相對于用戶屏幕的垂直位置 語法: event.screenY 注釋: 這是個只讀屬性。這意味著,你只能通過它來得到鼠標的當前位置,卻不能用它來更改鼠標的位置。 15.shiftKey 描述: 檢查shift鍵的狀態(tài)。 語法: event.shiftKey 可能的值: 當shift鍵按下時,值為 TRUE ,否則為 FALSE 。只讀。 16.srcElement 描述: 返回觸發(fā)事件的元素。只讀。例子見本文開頭。 語法: event.srcElement 17.srcFilter 描述: 返回觸發(fā) onfilterchange 事件的濾鏡。只讀。 語法: event.srcFilter 18.toElement 描述: 檢測 onmouseover 和 onmouseout 事件發(fā)生時,鼠標所進入的元素。 參考:7.fromElement 語法: event.toElement 注釋: 這是個只讀屬性。 例子:下面的代碼演示了當鼠標移到按鈕上時,彈出一個對話框,顯示“mouse arrived” Java代碼 1.<SCRIPT> 2.function testMouse(oObject) { 3.if(oObject.contains(event.toElement)) { 4.alert("mouse arrived"); 5.} 6.} 7.</SCRIPT> 8.: 9.<BUTTON ID=oButton onmouseover="testMouse(this)">Mouse Over This.</BUTTON> 19.type 描述: 返回事件名。 語法: event.type 注釋: 返回沒有“on”作為前綴的事件名,比如,onclick事件返回的type是click 只讀。 20. x 描述: 返回鼠標相對于css屬性中有position屬性的上級元素的x軸坐標。如果沒有css屬性中有position屬性的上級元素,默認以BODY元素作為參考對象。 語法: event.x 注釋: 如果事件觸發(fā)后,鼠標移出窗口外,則返回的值為 -1 這是個只讀屬性。這意味著,你只能通過它來得到鼠標的當前位置,卻不能用它來更改鼠標的位置。 21. y 描述: 返回鼠標相對于css屬性中有position屬性的上級元素的y軸坐標。如果沒有css屬性中有position屬性的上級元素,默認以BODY元素作為參考對象。 語法: event.y 注釋:
如果事件觸發(fā)后,鼠標移出窗口外,則返回的值為 -1 這是個只讀屬性。這意味著,你只能通過它來得到鼠標的當前位置,卻不能用它來更改鼠標的位置。 該文章在 2010/8/17 23:31:26 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |