事件物件event

2021-07-22 08:14:43 字數 2106 閱讀 8238

1. e.client:相對於當前頁面(視窗,不是這個元素)可視區域的左頂點

document.onmousemove = function(e)
2.e.screen:相對於計算機螢幕的左頂點

document.body.onclick = function(e)
3.offset:事件觸發時滑鼠距離該元素左邊(x)或上邊(y)的距離(與定位無關)

document.getelementbyid("son").onclick =  function(e)
1.offset: 偏移量(包含邊框)

// 即使元素沒有設定樣式,只用文字填充,也能獲取到  

offsetwidth:獲取dom元素的寬度

offsethight:獲取dom元素的高度

// 注意:是到父盒子的padding為止

offsetleft:到最近的帶有定位的父盒子的padding左側的距離。

offsettop:到最近的帶有定位的父盒子的padding上邊的距離。

2.client: 可視;當前物件的可視區域寬高(不包含邊框)(有相容性)

clientwidth: 可視寬度(width + padding)

clienthight: 可視高度(height + padding)

相容性寫法:

var clientwidth = window.innerwidth|| document.documentelement.clientwidth|| document.body.clientwidth|| 0;

備註:clienttop和clientleft沒用,他們通常指的就是border的寬度

(如果有滾動條會包含滾動條的寬度)

3.scroll:捲曲;獲取頁面捲曲的距離(頁面滾動的座標)(有相容性)

document.onmouseover = function()

相容性寫法:

var scrolltop = window.pageyoffset || document.documentelement.scrolltop || document.body.scrolltop || 0;

4.page:滑鼠在當前頁面的位置(頁面有捲曲的話要加上捲曲)(有相容性)

// pagex和pagey不支援ie瀏覽器

// 它的用法和e.clientx和e.clieny大致相同,

// 但是當頁面捲曲時,page系列能夠獲取到頁面的準確座標,計算了滾動的距離

// client系列不會計算滾動的距離

// 所以當設定隨著滑鼠滾動時,不計相容問題的話,page系列很簡單

// clien系列需要 + 對應的scroll

client:

pic.style.left = e.clientx + scrollleft +"px";

pic.style.top = e.clienty + scrolltop + "px";

page:

pic.style.left = pagex +"px";

pic.style.top = pagey + "px";

1. offset()方法

offset():設定元素相對於文件doucment的位置

offset(): 獲取元素相對於文件doucment的位置,獲取的是乙個物件

offset().left;offset().top 獲取距離文件左邊或上邊的距離

2. position()方法

只能獲取位置,不能設定

獲取相對於其最近的有定位的父元素

事件物件(event)

再觸發dom上的某個事件時,會產生乙個事件物件event,這個物件中包含著所有與事件有關的資訊。所有瀏覽器都支援event物件,但支援的方式不同。1.事件物件的獲取 event的獲取 event內容重要內容 2.screenx pagex和clientx的區別 3.pagey和pagex的相容寫法 ...

事件Event物件

當事件發生時,會向呼叫函式傳遞乙個event物件,event 物件記錄當前事件發生時的環境資訊。乙個事件只能對應乙個event物件,並且event 物件是短暫存在的。dom中的 event 物件的使用方法 1 在html 標記中,通過事件來呼叫函式,向函式傳遞乙個 event 引數,該引數就是乙個 ...

JS事件物件event

事件物件 事件引數物件,event物件 1,什麼是事件物件 任何乙個事件觸發後都會包含乙個event物件 event物件中包含與當前事件相關的一些屬性和方法。2,獲取event物件 1,在html中繫結事件 標記 on事件名 btn event eg function btn event 注意 1,...