用法
.mousemove( handler ) => jQuery
.mousemove( handler ) => jQuery
說明:將事件處理程序綁定到 "mousemove" JavaScript 事件,或在元素上觸發該事件。
-
添加的版本:1.0
.mousemove( handler )
-
handler每次觸發事件時執行的函數。
-
-
添加的版本:1.4.3
.mousemove( [eventData ], handler )
-
eventData類型:Anything包含將傳遞給事件處理程序的數據的對象。
-
handler每次觸發事件時執行的函數。
-
-
添加的版本:1.0
.mousemove()
- 此簽名不接受任何參數。
此方法是前兩個變體中.on( "mousemove", handler )
和第三個變體中.trigger( "mousemove" )
的快捷方式。
當鼠標指針在元素內移動時,mousemove
事件被發送到元素。任何 HTML 元素都可以接收此事件。
例如,考慮 HTML:
|
事件處理程序可以綁定到目標:
|
現在,當鼠標指針在目標按鈕內移動時,消息將附加到 <div id="log">:
.mousemove() 的處理程序在 (399, 48) 調用
.mousemove() 的處理程序在 (398, 46) 調用
.mousemove() 的處理程序在 (397, 44) 調用
.mousemove() 的處理程序在 (396, 42) 調用
要手動觸發事件,請應用不帶參數的.mousemove()
:
|
執行此代碼後,單擊 Trigger 按鈕也會附加消息:
.mousemove() 的處理程序調用於(未定義,未定義)
在跟蹤鼠標移動時,通常需要知道鼠標指針的實際位置。傳遞給處理程序的事件對象包含有關鼠標坐標的一些信息。 .clientX
、 .offsetX
和 .pageX
等屬性可用,但對它們的支持因瀏覽器而異。幸運的是,jQuery 標準化了 .pageX
和 .pageY
屬性,以便它們可以在所有瀏覽器中使用。這些屬性提供鼠標指針相對於文檔左上角的 X 和 Y 坐標,如上麵的示例輸出所示。
請記住,隻要鼠標指針移動,即使是像素移動,都會觸發 mousemove
事件。這意味著可以在非常短的時間內生成數百個事件。如果處理程序必須進行任何重要的處理,或者存在多個事件處理程序,這可能會嚴重消耗瀏覽器的性能。因此,重要的是盡可能優化mousemove
處理程序,並在不再需要它們時立即解除綁定。
一種常見的模式是從 mousedown
處理程序中綁定 mousemove
處理程序,並從相應的 mouseup
處理程序中解除綁定。如果實現此事件序列,請記住 mouseup
事件可能會發送到與 mousemove
事件不同的 HTML 元素。考慮到這一點,mouseup
處理程序通常應該綁定到 DOM 樹中較高的元素,例如 <body>
。
其他注意事項:
- 由於
.mousemove()
方法隻是.on( "mousemove", handler )
的簡寫,因此可以使用.off( "mousemove" )
進行分離。
例子:
當鼠標移到黃色 div 上時顯示鼠標坐標。坐標是相對於窗口的,在這種情況下是 iframe。
|
演示:
相關用法
- JQuery .mouseenter()用法及代碼示例
- JQuery .mouseleave()用法及代碼示例
- JQuery .mouseover()用法及代碼示例
- JQuery .mousedown()用法及代碼示例
- JQuery .mouseout()用法及代碼示例
- JQuery .mouseup()用法及代碼示例
- JQuery .map()用法及代碼示例
- JQuery .jquery用法及代碼示例
- JQuery .scroll()用法及代碼示例
- JQuery .add()用法及代碼示例
- JQuery .contextmenu()用法及代碼示例
- JQuery .undelegate()用法及代碼示例
- JQuery .load()用法及代碼示例
- JQuery .contents()用法及代碼示例
- JQuery .empty()用法及代碼示例
- JQuery UI .labels()用法及代碼示例
- JQuery UI .addClass()用法及代碼示例
- JQuery .click()用法及代碼示例
- JQuery UI .toggleClass()用法及代碼示例
- JQuery .removeAttr()用法及代碼示例
- JQuery .addClass()用法及代碼示例
- JQuery UI .cssClip()用法及代碼示例
- JQuery .next()用法及代碼示例
- JQuery UI .hide()用法及代碼示例
- JQuery .promise()用法及代碼示例
注:本文由純淨天空篩選整理自jquery.com大神的英文原創作品 .mousemove()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。