Javascript的Event對象詳解[收集整理]

來源:互聯網
上載者:User

Javascript的Event對象用來描述Javascript的事件,它主要作用於IE4和NN4以後的各個瀏覽器版本中。Event代表事件狀態,如事件發生的元素,鍵盤狀態,滑鼠位置和滑鼠按鍵狀態。一旦事件發生,便會產生Event對象,如單擊一個按鈕,瀏覽器的記憶體中就產生相應的 event對象。

IE對事件的引用

在IE4以上版本中,event對象作為window屬性訪問:window.event。其中引用的window部分是可選的.因此指令碼就像全域引用一樣來對待event對象:

event.propertyName

event對象成員表:

下面的表格列出了 event 對象引出的成員。

對象
dataTransfer 提供了對於預定義的剪貼簿格式的訪問,以便在拖曳操作中使用。

集合
bookmarks 返回捆綁到當前事件所影響的行上的 ActiveX® 資料對象(ADO)書籤的集合。
boundElements 返回頁面上所有綁定到給定資料集的所有元素的集合。

屬性
Abstract 使用 event 對象擷取進階流重新導向器(ASX)檔案中項目橫幅的 Abstract 內容。
altKey 設定或擷取 ALT 鍵的狀態。 檢索ALT鍵的目前狀態可能的值 true為關閉,false為不關閉
altLeft 設定或擷取左 ALT 鍵的狀態。
Banner 使用 event 對象擷取進階流重新導向器(ASX)檔案中項目的 Banner 內容。
button 設定或擷取使用者所按的滑鼠按鍵。
可能的值:
0 沒按鍵
1 按左鍵
2 按右鍵
3 按左右鍵
4 按中間鍵
5 按左鍵和中間鍵
6 按右鍵和中間鍵
7 按所有的鍵

cancelBubble 設定或擷取當前事件是否要在事件控制代碼中向上冒泡。
設定或檢索當前事件是否將事件控制代碼起泡可能的值: false 啟用起泡true 取消該事件起泡

clientX 設定或擷取滑鼠指標位置相對於視窗用戶端區域的 x 座標,
其中用戶端區域不包括視窗自身的控制項和捲軸。
屬性為唯讀,沒有預設值。
clientY 設定或擷取滑鼠指標位置相對於視窗用戶端區域的 y 座標,
其中用戶端區域不包括視窗自身的控制項和捲軸。
屬性為唯讀,沒有預設值。
clientX,clientY不考慮文檔滾動,如果要把表單滾動計在內,加上document.body.scrollLeft,document.body.scrollTop即可

contentOverflow 擷取表明文檔處理當前 LayoutRect 對象後是否包含附加的內容。
ctrlKey 設定或擷取 Ctrl 鍵的狀態。 ctrlKey 檢索CTRL鍵的目前狀態可能的值 true為關閉false為不關閉
ctrlLeft 設定或擷取左 Ctrl 鍵的狀態。
dataFld 設定或擷取 oncellchange 事件影響的資料列。
fromElement 設定或擷取事件發生時啟用或滑鼠將要離開的對象。

keyCode 設定或擷取與導致事件的按鍵關聯的 Unicode 按鍵代碼。
該屬性與onkeydown onkeyup onkeypress一起使用如果沒有引發事件的關鍵字,則該值為0,
用String.fromCharCode()可將字元代碼轉換成字串.

MoreInfo 通過 event 對象擷取進階流重新導向器(ASX)檔案中項目橫幅的 MoreInfo 內容。
nextPage 擷取列印模板中下頁的位置。
offsetX 設定或擷取滑鼠指標位置相對於觸發事件的對象的 x 座標。
offsetY 設定或擷取滑鼠指標位置相對於觸發事件的對象的 y 座標。
propertyName 設定或擷取對象上發生更改的屬性名稱。
qualifier 設定或擷取由資料來源對象提供的資料成員的名稱。
reason 設定或擷取資料來源對象的資料轉送結果。
可能的值:
0 資料轉送成功
1 資料轉送失敗
2 資料轉送錯誤

recordset 從資料來源對象設定或擷取對預設資料集的引用。 該特性為唯讀
repeat 擷取 onkeydown 事件是否正在重複。 該屬性只有在onkeydown事件重複時才返回true
returnValue 設定或擷取事件的傳回值。
可能的值:
true 事件中的值被返回
false 來源物件上事件的預設操作被取消

saveType 當 oncontentsave 觸發時擷取剪貼簿類型。

screenX 設定或擷取擷取滑鼠指標位置相對於使用者螢幕的 x 座標。
screenY 設定或擷取滑鼠指標位置相對於使用者螢幕的 y 座標。
(即滑鼠指標相對於使用者顯示器的左上方的XY座標的值)

shiftKey 設定或擷取 Shift 鍵的狀態。 可能的值 true為關閉,false為不關閉

shiftLeft 設定或擷取左 Shift 鍵的狀態。
srcElement 設定或擷取觸發事件的對象。 (發生事件的文件項目)
srcFilter 設定或擷取觸發 onfilterchange 事件的濾鏡對象。
srcUrn 擷取觸發事件的行為的統一資源名稱(URN)。
除非下面兩個條件都為真,否則該特性被設定為null
1.行為被附加到觸發事件的要素上
2.在前面的項目符號中定義的行為己指定了一個URN標識符和己觸發的事件

toElement 設定或擷取使用者要將滑鼠指標移動指向的對象的引用。
type 從 event 對象中擷取事件名稱。 如click,mouseover
wheelDelta 設定或擷取滾輪按鈕滾動的距離和方向。
x 設定或擷取滑鼠指標位置相對於父文檔的 x 像素座標。
y 設定或擷取滑鼠指標位置相對於父文檔的 y 像素座標。

注釋

event 對象僅在事件中可用──這意味著,你可以在事件控制代碼中使用該對象,但不能在其它代碼中使用。

儘管所有事件屬性都可通過所有的 event 對象訪問,但是在某些事件中某些屬性可能無意義。例如,fromElement 和 toElement 屬性僅當處理 onmouseover 和 onmouseout 事件時有意義。

在 Microsoft Visual Basic® 指令碼版本(VBScript)中,你必須通過 window 對象訪問 event 對象。

此對象在 Microsoft® Internet Explorer 4.0 的指令碼中可用。

樣本

下面的例子使用了 event 對象來決定使用者單擊的位置是否在連結上,並且避免在 SHIFT 鍵按下時導航到連結。

<HTML>
<HEAD><TITLE>取消連結</TITLE>
<SCRIPT LANGUAGE="JScript">
function cancelLink() {
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
window.event.returnValue = false;
}
</SCRIPT>
<BODY onclick="cancelLink()">

要使Event對象各個屬性或方法都能實現,應選擇IE5.5以上版本。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.