国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

JavaScript event 物件:當(dāng)前事件

取得event物件

在W3C 規(guī)格中,event 物件是隨事件處理函數(shù)傳入的,Chrome、FireFox、Opera、Safari、IE9.0及其以上版本都支援這種方式;但是對於IE8.0 及其以下版本,event 物件必須作為window 物件的屬性。

◆?在遵循 W3C 規(guī)格的瀏覽器中,event 物件透過事件處理函數(shù)的參數(shù)傳入。

語法:

elementObject.OnXXX=function(e){
    var eve=e; // 聲明一個(gè)變量來接收 event 對象
}

上面綁定的事件處理函數(shù)中,參數(shù) e 用來傳入 event 對象,變數(shù) eve 表示目前事件。這個(gè)過程是 JavaScript 會(huì)自動(dòng)完成的。

例如,要取得發(fā)生事件時(shí)滑鼠的座標(biāo),可以這樣寫:

<div id="demo">在這里單擊</div>
<script type="text/javascript">
document.getElementById("demo").onclick=function(e){
    var eve=e;
    var x=eve.x; // X坐標(biāo)
    var y=eve.y;  // Y坐標(biāo)
    alert("X坐標(biāo):"+x+"\nY坐標(biāo):"+y);
}
</script>

請看下面的示範(fàn)

QQ截圖20161013102330.png

# #◆?對於IE8.0 及其下列版本,event 必須作為window 物件的屬性。


語法:

elementObject.OnXXX=function(){
    var eve=window.event; // 聲明一個(gè)變量來接收event對象
}

例如,要取得發(fā)生事件時(shí)滑鼠的座標(biāo),可以這樣寫:


<div id="demo">在這里單擊</div>
<script  type="text/javascript">
document.getElementById("demo").onclick=function(){
    var eve=window.event;
    var x=eve.x;  // X坐標(biāo)
    var y=eve.y;  // Y坐標(biāo)
    alert("X坐標(biāo):"+x+"\nY坐標(biāo):"+y);
}
</script>

請看下面的示範(fàn):

QQ截圖20161013102438.png

可以看出,要想取得與目前事件有關(guān)的狀態(tài),例如發(fā)生事件的DOM元素、滑鼠座標(biāo)、鍵盤按鍵等,就要處理瀏覽器的相容問題。


典型程式碼:

elementObject.OnXXX=function(e){
    var eve = e || window.event;  // 使用 || 運(yùn)算取得event對象
}

這裡要注意一點(diǎn), || 運(yùn)算的回傳值不一定是Boolean 類型,當(dāng)|| 運(yùn)算的兩個(gè)運(yùn)算元中有一個(gè)為真時(shí),將傳回該操作數(shù)本身的值。上面的程式碼,如果 event 隨函數(shù)的參數(shù)傳入,e 為真,eve=e;如果作為 window 物件的屬性,window.event 為真,eve=window.event 。


改進(jìn)上面取得滑鼠座標(biāo)的程式碼,使它相容於所有瀏覽器:

<div id="demo">在這里單擊</div>
<script  type="text/javascript">
document.getElementById("demo").onclick=function(e){
    var eve = e || window.event;
    var x=eve.x;
    var y=eve.y;
    alert("X坐標(biāo):"+x+"\nY坐標(biāo):"+y);
}
</script>

請看下面的示範(fàn):

QQ截圖20161013102514.png

event物件常用屬性與方法#

event 物件用來表示當(dāng)前事件,事件有很多狀態(tài),例如,滑鼠點(diǎn)擊時(shí)的位置,按下鍵盤時(shí)的按鍵,發(fā)生事件的HTML元素,是否執(zhí)行預(yù)設(shè)動(dòng)作,是否冒泡等,這些都是作為event物件的屬性和方法存在的。想要獲得對應(yīng)的狀態(tài),就要存取對應(yīng)的屬性和方法。

event 物件常用屬性與方法(W3C規(guī)格)

QQ截圖20161013102531.png

#除了上面W3C規(guī)範(fàn)所規(guī)定的屬性與方法外,IE瀏覽器還支援以下屬性。

event 物件的屬性(IE特有)

QQ截圖20161013102545.png

#
繼續(xù)學(xué)習(xí)
||
<html> <head> <title>獲取鼠標(biāo)的坐標(biāo)信息</title> </head> <body> <div id="demo">在這里單擊</div> <script type="text/javascript"> document.getElementById("demo").onclick=function(e){ var eve = e || window.event; var x=eve.x; var y=eve.y; alert("X坐標(biāo):"+x+"\nY坐標(biāo):"+y); } </script> </body> </html>
提交重置程式碼