自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解JS中event使用方法

開發(fā) 前端
這里和大家學(xué)習(xí)一下JS event使用方法,event代表事件的狀態(tài),例如觸發(fā)event對象的元素、鼠標(biāo)的位置及狀態(tài)、按下的鍵等等,并且event對象只在事件發(fā)生的過程中才有效。

本文向大家描述一下JS event使用方法,event的某些屬性只對特定的事件有意義。比如,fromElement和toElement屬性只對onmouseover和onmouseout事件有意義。

JS event使用方法詳解

event代表事件的狀態(tài),例如觸發(fā)event對象的元素、鼠標(biāo)的位置及狀態(tài)、按下的鍵等等。event對象只在事件發(fā)生的過程中才有效。

event的某些屬性只對特定的事件有意義。比如,fromElement和toElement屬性只對onmouseover和onmouseout事件有意義。

下面的例子檢查鼠標(biāo)是否在鏈接上單擊,并且,如果shift鍵被按下,就取消鏈接的跳轉(zhuǎn)。

  1. <HTML> 
  2. <HEAD><TITLE>CancelsLinks</TITLE> 
  3. <SCRIPTLANGUAGESCRIPTLANGUAGE="JScript">...  
  4. functioncancelLink()...{  
  5. if(window.event.srcElement.tagName=="A"&&window.event.shiftKey)  
  6. window.event.returnValue=false;  
  7. }  
  8. </SCRIPT> 
  9. <BODYonclickBODYonclick="cancelLink()"> 
  10.  

 下面的例子在狀態(tài)欄上顯示鼠標(biāo)的當(dāng)前位置。

  1. <BODYonmousemoveBODYonmousemove="window.status='X='+window.event.x+  
  2. 'Y='+window.event.y"> 

屬性:

  1. altKey,button,cancelBubble,clientX,clientY,  
  2. ctrlKey,fromElement,keyCode,offsetX,offsetY,  
  3. propertyName,returnValue,screenX,screenY,shiftKey,  
  4. srcElement,srcFilter,toElement,type,x,y 

1.altKey

描述:
檢查alt鍵的狀態(tài)。

語法:
event.altKey

可能的值:
當(dāng)alt鍵按下時(shí),值為TRUE,否則為FALSE。只讀。

2.button

描述:
檢查按下的鼠標(biāo)鍵。

語法:
event.button

可能的值:
0沒按鍵
1按左鍵
2按右鍵
3按左右鍵
4按中間鍵
5按左鍵和中間鍵
6按右鍵和中間鍵
7按所有的鍵

這個(gè)屬性僅用于onmousedown,onmouseup,和onmousemove事件。對其他事件,不管鼠標(biāo)狀態(tài)如何,都返回0(比如onclick)。

3.cancelBubble

描述:
檢測是否接受上層元素的事件的控制。

語法:
event.cancelBubble[=cancelBubble]

可能的值:
這是一個(gè)可讀寫的布爾值:

TRUE不被上層原素的事件控制。
FALSE允許被上層元素的事件控制。這是默認(rèn)值。

例子:
下面的代碼片斷演示了當(dāng)在圖片上點(diǎn)擊(onclick)時(shí),如果同時(shí)shift鍵也被按下,就取消上層元素(body)上的事件onclick所引發(fā)的showSrc()函數(shù)。

  1. <SCRIPTLANGUAGESCRIPTLANGUAGE="JScript"> 
  2. functioncheckCancel()...{  
  3. if(window.event.shiftKey)  
  4. window.event.cancelBubble=true;  
  5. }  
  6. functionshowSrc()...{  
  7. if(window.event.srcElement.tagName=="IMG")  
  8. alert(window.event.srcElement.src);  
  9. }  
  10. </SCRIPT> 
  11. <BODYonclickBODYonclick="showSrc()"> 
  12. <IMGonclickIMGonclick="checkCancel()"src="/sample.gif"> 
  13.  

 4.clientX

描述:
返回鼠標(biāo)在窗口客戶區(qū)域中的X坐標(biāo)。

語法:
event.clientX

注釋:
這是個(gè)只讀屬性。這意味著,你只能通過它來得到鼠標(biāo)的當(dāng)前位置,卻不能用它來更改鼠標(biāo)的位置。

5.clientY

描述:
返回鼠標(biāo)在窗口客戶區(qū)域中的Y坐標(biāo)。

語法:
event.clientY

注釋:
這是個(gè)只讀屬性。這意味著,你只能通過它來得到鼠標(biāo)的當(dāng)前位置,卻不能用它來更改鼠標(biāo)的位置。#p#

6.ctrlKey

描述:
檢查ctrl鍵的狀態(tài)。

語法:
event.ctrlKey

可能的值:
當(dāng)ctrl鍵按下時(shí),值為TRUE,否則為FALSE。只讀。

7.fromElement

描述:
檢測onmouseover和onmouseout事件發(fā)生時(shí),鼠標(biāo)所離開的元素。參考:18.toElement

語法:
event.fromElement

注釋:
這是個(gè)只讀屬性。

8.keyCode

描述:
檢測鍵盤事件相對應(yīng)的內(nèi)碼。
這個(gè)屬性用于onkeydown,onkeyup,和onkeypress事件。

語法:
event.keyCode[=keyCode]

可能的值:
這是個(gè)可讀寫的值,可以是任何一個(gè)Unicode鍵盤內(nèi)碼。如果沒有引發(fā)鍵盤事件,則該值為0。

9.offsetX

描述:
檢查相對于觸發(fā)事件的對象,鼠標(biāo)位置的水平坐標(biāo)

語法:
event.offsetX

10.offsetY

描述:
檢查相對于觸發(fā)事件的對象,鼠標(biāo)位置的垂直坐標(biāo)

語法:
event.offsetY

#p#

11.propertyName

描述:
設(shè)置或返回元素的變化了的屬性的名稱。

語法:
event.propertyName[=sProperty]

可能的值:
sProperty是一個(gè)字符串,指定或返回觸發(fā)事件的元素在事件中變化了的屬性的名稱。
這個(gè)屬性是可讀寫的。無默認(rèn)值。

注釋:
你可以通過使用onpropertychange事件,得到propertyName的值。

例子:
下面的例子通過使用onpropertychange事件,彈出一個(gè)對話框,顯示propertyName的值。 

  1. <HEAD> 
  2. <SCRIPT>...  
  3. functionchangeProp()...{  
  4. btnProp.value="ThisisthenewVALUE";  
  5. }  
  6.  
  7. functionchangeCSSProp()...{  
  8. btnStyleProp.style.backgroundColor="aqua";  
  9. }  
  10. </SCRIPT> 
  11. </HEAD> 
  12. <BODY> 
  13. <P>TheeventobjectpropertypropertyNameis  
  14. usedheretoreturnwhichpropertyhasbeen  
  15. altered.</P> 
  16.  
  17. <INPUTTYPEINPUTTYPE=buttonID=btnProponclick="changeProp()" 
  18. VALUE="ClicktochangetheVALUEpropertyofthisbutton" 
  19. onpropertychange='alert(event.propertyName+"propertyhaschangedvalue")'> 
  20. <INPUTTYPEINPUTTYPE=buttonID=btnStyleProp  
  21. onclick="changeCSSProp()" 
  22. VALUE="ClicktochangetheCSSbackgroundColorpropertyofthisbutton" 
  23. onpropertychange='alert(event.propertyName+"propertyhaschangedvalue")'> 
  24. </BODY> 
  25.  

 12.returnValue

描述:
設(shè)置或檢查從事件中返回的值

語法:
event.returnValue[=Boolean]

可能的值:
true事件中的值被返回
false源對象上事件的默認(rèn)操作被取消

例子見本文的開頭。

13.screenX

描述:
檢測鼠標(biāo)相對于用戶屏幕的水平位置

語法:
event.screenX

注釋:
這是個(gè)只讀屬性。這意味著,你只能通過它來得到鼠標(biāo)的當(dāng)前位置,卻不能用它來更改鼠標(biāo)的位置。

14.screenY

描述:
檢測鼠標(biāo)相對于用戶屏幕的垂直位置

語法:
event.screenY

注釋:
這是個(gè)只讀屬性。這意味著,你只能通過它來得到鼠標(biāo)的當(dāng)前位置,卻不能用它來更改鼠標(biāo)的位置。

15.shiftKey

描述:
檢查shift鍵的狀態(tài)。

語法:
event.shiftKey

可能的值:
當(dāng)shift鍵按下時(shí),值為TRUE,否則為FALSE。只讀。#p#

16.srcElement

描述:
返回觸發(fā)事件的元素。只讀。例子見本文開頭。

語法:
event.srcElement

17.srcFilter

描述:
返回觸發(fā)onfilterchange事件的濾鏡。只讀。

語法:
event.srcFilter

18.toElement

描述:
檢測onmouseover和onmouseout事件發(fā)生時(shí),鼠標(biāo)所進(jìn)入的元素。參考:7.fromElement

語法:
event.toElement

注釋:
這是個(gè)只讀屬性。

例子:下面的代碼演示了當(dāng)鼠標(biāo)移到按鈕上時(shí),彈出一個(gè)對話框,顯示“mousearrived” 

  1. <SCRIPT> 
  2. functiontestMouse(oObject)...{  
  3. if(oObject.contains(event.toElement))...{  
  4. alert("mousearrived");  
  5. }  
  6. }  
  7. </SCRIPT> 
  8.  
  9. <BUTTONIDBUTTONID=oButtononmouseover="testMouse(this)"> 
  10. MouseOverThis.</BUTTON> 
  11.  

 19.type

描述:
返回事件名。

語法:
event.type

注釋:
返回沒有“on”作為前綴的事件名,比如,onclick事件返回的type是click
只讀。

20.x

描述:
返回鼠標(biāo)相對于css屬性中有position屬性的上級元素的x軸坐標(biāo)。如果沒有css屬性中有position屬性的上級元素,默認(rèn)以BODY元素作為參考對象。

語法:
event.x

注釋:
如果事件觸發(fā)后,鼠標(biāo)移出窗口外,則返回的值為-1
這是個(gè)只讀屬性。這意味著,你只能通過它來得到鼠標(biāo)的當(dāng)前位置,卻不能用它來更改鼠標(biāo)的位置。

21.y

描述:
返回鼠標(biāo)相對于css屬性中有position屬性的上級元素的y軸坐標(biāo)。如果沒有css屬性中有position屬性的上級元素,默認(rèn)以BODY元素作為參考對象。

語法:
event.y

注釋:
如果事件觸發(fā)后,鼠標(biāo)移出窗口外,則返回的值為-1
這是個(gè)只讀屬性。這意味著,你只能通過它來得到鼠標(biāo)的當(dāng)前位置,卻不能用它來更改鼠標(biāo)的位置。

【編輯推薦】

  1. 解析JS中定義Function的兩種實(shí)用方法
  2. JS中Array數(shù)組的三大屬性用法揭秘
  3. prototype.js的Ajax對IE8兼容問題解決方案
  4. 專家提醒 IE下JS編程中需注意內(nèi)存釋放問題
  5. JavaScript調(diào)試工具解決IE6等多版本共存問題 


 

責(zé)任編輯:佚名 來源: jb51.net
相關(guān)推薦

2021-05-08 06:14:28

Vue.js片段開發(fā)

2012-05-10 10:53:10

Linuxhistory

2009-12-28 13:28:03

WPF視頻

2009-06-29 17:57:30

ApplicationJSP

2012-05-09 10:52:37

Linux監(jiān)控命令

2019-11-07 23:48:12

shell腳本getopts

2023-05-11 08:00:44

Golangsync.Pool

2010-06-01 19:55:30

SVN使用

2010-06-03 17:38:03

Hadoop命令

2009-12-02 16:04:44

PHP fsockop

2010-01-28 17:07:03

Android Gal

2011-08-10 17:16:01

Objective-C靜態(tài)變量

2011-08-08 11:40:42

Cocos2d CCLayer Touch

2009-06-08 20:07:44

Eclipse中使用p

2023-06-28 08:34:02

Bind()函數(shù)JavaScript

2012-05-11 10:13:54

2009-08-25 16:54:28

C# RichText

2010-05-31 11:30:57

SVN使用

2009-11-30 17:43:54

PHP split()

2010-01-25 14:10:21

C++堆棧
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號