再觸發(fā)DOM上的某個事件時,會產(chǎn)生一個事件對象event狡恬,這個對象中包含著所有與事件有關(guān)的信息珠叔。所有瀏覽器都支持event對象,但支持的方式不同弟劲。
比如鼠標(biāo)操作時候祷安,會添加鼠標(biāo)位置的相關(guān)信息到事件對象中。(類似Date)
普通瀏覽器支持 event(帶參兔乞,任意參數(shù))
ie 678 支持 window.event(無參汇鞭,內(nèi)置)
總結(jié):他是一個事件中的內(nèi)置對象凉唐。內(nèi)部裝了很多關(guān)于鼠標(biāo)和事件本身的信息。
事件對象的獲取
IE678中霍骄,window.event
在火狐谷歌中台囱,event或者,在事件綁定的函數(shù)中读整,加參玄坦,這個參數(shù)就是event.
Box.onclick = function (aaa){ aaa就是event }
兼容獲取方式有兩種
不寫參數(shù)直接使用event;
寫參數(shù),但是為event....var event = event || window.event;(主要用這種)
event內(nèi)容重要內(nèi)容
screenX绘沉、pageX和clientX的區(qū)別
PageY/pageX: 鼠標(biāo)位于整個網(wǎng)頁頁面的頂部和左側(cè)部分的距離煎楣。(頁面)
ScreenY/screenX: 鼠標(biāo)位于屏幕的上方和左側(cè)的距離。(屏幕)
ClientX/clientY: 鼠標(biāo)位于瀏覽器的左側(cè)和頂部的距離车伞。(瀏覽器大小和位置)
PageY和pageX的兼容寫法
在頁面位置就等于=看得見的+看不見的
pageY/pageX=event.clientY/clientX+scroll().top/scroll().left
新事件onmousemove
只要鼠標(biāo)在綁定該事件的事件源上移動择懂,哪怕1像素,也會觸動這個事件另玖。
(這個事件可以直接或者間接的替代定時器)