欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Javascript拖拽&拖放系列文章3之細說事件對象第1/4頁

 更新時間:2008年09月25日 16:15:15   作者:  
Javascript中的事件對象其實和.NET中繼承自EventArgs類的派生類類似,用來給事件處理程序傳遞狀態(tài)信息,從而進行相應的操作。這一篇文章將講述Javascript事件對象中和實現(xiàn)拖拽功能相關的幾個屬性,并在最后將IE事件模型和標準DOM事件模型的差異封裝到一個類中,從而適應所有的瀏覽器。
在閱讀本文前,可以先閱讀《Javascript拖拽&拖放系列文章2之offsetLeft、offsetTop、offsetWidth、offsetHeight屬性》這篇文章,以理清上下文關系。
好了,讓我們開始進入正題。
模型相同的屬性/方法
1 Button屬性
Integer類型,可讀可寫。對于特定的鼠標事件,表示按下的鼠標按鈕,它可以在拖拽的時候,判斷是否是鼠標左鍵引發(fā)mousedown事件。它的所有取值及其意義(參考自《Javascript高級程序設計》)好了,讓我們開始進入正題。
3.1 e/window.Event對象的屬性/方法
3.1.1 IE事件模型和DOM事件如下:
0-未按下按鈕
1-按下左鍵
2-按下右鍵
3-同時按下左右按鈕
4-按下中鍵
5-按下左鍵和中鍵
6-按下右鍵和中鍵
7同時按下左中右鍵
mouseup的button屬性返回的數(shù)值和mousedown事件中的完全一樣。

注:在兼容DOM事件模型的所有瀏覽器中,0表示按下左鍵,數(shù)值1并不存在,2表示按下右鍵,對于非鼠標事件,返回“undefined”。

2 clientX、clientY屬性
這兩個屬性的類型都是Integer,單位是像素,可讀可寫。分別表示相關事件發(fā)生時,鼠標在瀏覽器的客戶端區(qū)域(不包括工具欄、滾動條等)的x坐標和y坐標。用一張圖片來解釋就再好不過了,請看:

圖3.1:clientX和clientY屬性

 

以下代碼是一個非常簡單的示例,它可以隨時定位鼠標的坐標,并將結果顯示在兩個文本框中,如果愿意的話,你可以嘗試運行它,兼容目前所有的現(xiàn)代瀏覽器。

示例代碼1:

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<style type="text/css">

body
{
border
:1px solid black;
margin
:0px;
}
</style>
<script type="text/javascript" language="JavaScript">
document.onmousemove
=move;
function move(e){
if(!e)
{
e
=window.event;
}
var xElement=document.getElementById("x");
var yElement=document.getElementById("y");
xElement.value
=e.clientX;
yElement.value
=e.clientY;

}
</script>
</head>
<body>
<input type="text" id="x" value="" />
<input type="text" id="y" value="" />
</body>
</html>






3 type屬性

相關文章

最新評論