JS event 屬性詳解

2021-09-01 21:24:50 字數 2038 閱讀 5182

event屬性和方法:

1. type:事件的型別,如onlick中的click;

2. srcelement/target:事件源,就是發生事件的元素;

3. button:宣告被按下的滑鼠鍵,整數,1代表左鍵,2代表右鍵,4代表中鍵,如果按下多個鍵,酒把這些值加起來,所以3就代表左右鍵同時按下;(firefox中 0代表左鍵,1代表中間鍵,2代表右鍵)

4. clientx/clienty:事件發生的時候,滑鼠相對於瀏覽器視窗可視文件區域的左上角的位置;(在dom標準中,這兩個屬性值都不考慮文件的滾動情況,也就是說,無**檔滾動到**,只要事件發生在視窗左上角,clientx和clienty都是 0,所以在ie中,要想得到事件發生的座標相對於文件開頭的位置,要加上

document.body.scrollleft和 document.body.scrolltop)

5. offsetx,offsety/layerx,layery:事件發生的時候,滑鼠相對於源元素左上角的位置;

6. x,y/pagex,pagey:檢索相對于父要素滑鼠水平座標的整數;

7. altkey,ctrlkey,shiftkey等:返回乙個布林值;

8. keycode:返回keydown何keyup事件發生的時候按鍵的**,以及keypress 事件的unicode字元;(firefox2不支援 event.keycode,可以用 event.which替代 )

9. fromelement,toelement:前者是指代mouseover事件中滑鼠移動過的文件元素,後者指代mouseout事件中滑鼠移動到的文件元素;

10. cancelbubble:乙個布林屬性,把它設定為true的時候,將停止事件進一步起泡到包容層次的元素;(e.cancelbubble = true; 相當於 e.stoppropagation();)

11. returnvalue:乙個布林屬性,設定為false的時候可以組織瀏覽器執行預設的事件動作;(e.returnvalue = false; 相當於 e.preventdefault();)

12. attachevent(),detachevent()/addeventlistener(),removeeventlistener:為制定dom物件事件型別註冊多個事件處理函式的方法,它們有兩個引數,第乙個是事件型別,第二個是事件處理函式。在

attachevent()事件執行的時候,this關鍵字指向的是window物件,而不是發生事件的那個元素;

13. screenx、screeny:滑鼠指標相對於顯示器左上角的位置,如果你想開啟新的視窗,這兩個屬性很重要;

一些說明:

1. event代表事件的狀態,例如觸發event物件的元素、滑鼠的位置及狀態、按下的鍵等等;

2. event物件只在事件發生的過程中才有效。

firefox裡的event跟ie裡的不同,ie裡的是全域性變數,隨時可用;firefox裡的要用引數引導才能用,是執行時的臨時變數。

在ie/opera中是window.event,在firefox中是event;而事件的物件,在ie中是window.event.srcelement,在firefox中是event.target,opera中兩者都可用。

3. 下面兩句效果相同

var evt = (evt) ? evt : ((window.event) ? window.event : null);

var evt = evt || window.event; // firefox下window.event為null, ie下event為null

4. ie中事件的起泡

ie中事件可以沿著包容層次一點點起泡到上層,也就是說,下層的dom節點定義的事件處理函式,到了上層的節點如果還有和下層相同事件型別的事件處理函式,那麼上層的事件處理函式也會執行。例如, div 標籤包含了 a ,如果這兩個標籤都有onclick事件的處理函式,那麼執行的情況就是先執行標籤 a 的onclick事件處理函式,再執行 div 的事件處理函式。如果希望的事件處理函式執行完畢之後,不希望執行上層的 div 的onclick的事件處理函式了,那麼就把cancelbubble設定為true即可。

JS event使用方法詳解

event代表事件的狀態,例如觸發event物件的元素 滑鼠的位置及狀態 按下的鍵等等。event物件只在事件發生的過程中才有效。event的某些屬性只對特定的事件有意義。比如,fromelement 和 toelement 屬性只對 onmouseover 和 onmouseout 事件有意義。下...

js event物件學習 一

在ie中,事件物件是window物件的乙個屬性event。也就是說,事件處理函式必須這樣訪問事件物件 odiv.nclick function 儘管它是window物件的屬性,event物件還是只能在事件發生時訪問。所有的事件處理函式執行完畢後,事件物件就被銷毀。dom標準規則說,event物件必須...

DIV屬性詳解

position 決定 div tag 是如何放置的。relative 意思是div的位置是相對於其他 tag 的,而 absolute 是說 div tag 的位置是相對於它所在的視窗。left 相對於視窗左邊的位置 top 相對於視窗上邊的位置 width div tag 的寬度。所有在 div...