MouseEvent
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
Giao diện MouseEvent biểu thị các sự kiện xảy ra do người dùng tương tác với thiết bị trỏ (chẳng hạn như chuột).
Các sự kiện phổ biến sử dụng giao diện này bao gồm click, dblclick, mouseup, mousedown.
MouseEvent bắt nguồn từ UIEvent, và UIEvent lại bắt nguồn từ Event.
Mặc dù phương thức MouseEvent.initMouseEvent() được giữ lại để tương thích ngược, nhưng việc tạo đối tượng MouseEvent phải được thực hiện bằng cách sử dụng hàm tạo MouseEvent().
Một số sự kiện cụ thể hơn dựa trên MouseEvent, bao gồm WheelEvent, DragEvent và PointerEvent.
Người xây dựng
MouseEvent()-
Tạo một đối tượng
MouseEvent.
Thuộc tính tĩnh
MouseEvent.WEBKIT_FORCE_AT_MOUSE_DOWNNon-standard Read only-
Lực tối thiểu cần thiết cho một cú nhấp chuột bình thường.
MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWNNon-standard Read only-
Lực tối thiểu cần thiết cho một cú bấm mạnh.
Thuộc tính phiên bản
Giao diện này cũng kế thừa các thuộc tính của giao diện cha là UIEvent và Event.
MouseEvent.altKeyRead only-
Trả về
truenếu phím alt không hoạt động khi sự kiện chuột được kích hoạt. -
Số nút được nhấn hoặc nhả (nếu có) khi sự kiện chuột được kích hoạt.
-
Các nút được nhấn (nếu có) khi sự kiện chuột được kích hoạt.
MouseEvent.clientXRead only-
Tọa độ X của con trỏ chuột trong tọa độ khung nhìn.
MouseEvent.clientYRead only-
Tọa độ Y của con trỏ chuột trong tọa độ khung nhìn.
MouseEvent.ctrlKeyRead only-
Trả về
truenếu phím control không hoạt động khi sự kiện chuột được kích hoạt. MouseEvent.layerXNon-standard Read only-
Trả về tọa độ ngang của sự kiện so với lớp hiện tại.
MouseEvent.layerYNon-standard Read only-
Trả về tọa độ dọc của sự kiện so với lớp hiện tại.
MouseEvent.metaKeyRead only-
Trả về
truenếu phím meta không hoạt động khi sự kiện chuột được kích hoạt. MouseEvent.movementXRead only-
Tọa độ X của con trỏ chuột so với vị trí của sự kiện di chuyển cuối cùng cùng loại (a
mousemove,pointermovehoặcpointerrawupdate). MouseEvent.movementYRead only-
Tọa độ Y của con trỏ chuột so với vị trí của sự kiện di chuyển cuối cùng cùng loại (a
mousemove,pointermovehoặcpointerrawupdate). MouseEvent.offsetXRead only-
Tọa độ X của con trỏ chuột so với vị trí cạnh đệm của nút đích.
MouseEvent.offsetYRead only-
Tọa độ Y của con trỏ chuột so với vị trí cạnh đệm của nút đích.
MouseEvent.pageXRead only-
Tọa độ X của con trỏ chuột so với toàn bộ tài liệu.
MouseEvent.pageYRead only-
Tọa độ Y của con trỏ chuột so với toàn bộ tài liệu.
-
Mục tiêu phụ cho sự kiện, nếu có.
MouseEvent.screenXRead only-
Tọa độ X của con trỏ chuột trong tọa độ màn hình.
MouseEvent.screenYRead only-
Tọa độ Y của con trỏ chuột trong tọa độ màn hình.
MouseEvent.shiftKeyRead only-
Trả về
truenếu phím shift không hoạt động khi sự kiện chuột được kích hoạt. MouseEvent.mozInputSourceNon-standard Read only-
Loại thiết bị đã tạo ra sự kiện (một trong các hằng số
MOZ_SOURCE_*). Ví dụ: điều này cho phép bạn xác định xem sự kiện chuột được tạo bởi chuột thực hay sự kiện chạm (điều này có thể ảnh hưởng đến mức độ chính xác mà bạn diễn giải tọa độ liên quan đến sự kiện). MouseEvent.webkitForceNon-standard Read only-
Lượng áp lực được áp dụng khi nhấp chuột.
MouseEvent.xRead only-
Bí danh của
MouseEvent.clientX. MouseEvent.yRead only-
Bí danh của
MouseEvent.clientY.
Phương thức sơ thẩm
Giao diện này cũng kế thừa các phương thức của cha nó là UIEvent và Event.
MouseEvent.getModifierState()-
Trả về trạng thái hiện tại của phím bổ trợ đã chỉ định. Xem
KeyboardEvent.getModifierState()để biết chi tiết. MouseEvent.initMouseEvent()Deprecated-
Khởi tạo giá trị của
MouseEventđược tạo. Nếu sự kiện đã được gửi đi thì phương thức này sẽ không có tác dụng gì.
Ví dụ
Ví dụ này minh họa việc mô phỏng một lượt nhấp chuột (tạo sự kiện nhấp chuột theo chương trình) trên một hộp kiểm bằng các phương thức DOM.
Trạng thái sự kiện (bị hủy hay không) sau đó được xác định bằng giá trị trả về của phương thức EventTarget.dispatchEvent().
HTML
<p>
<label><input type="checkbox" id="checkbox" /> Checked</label>
</p>
<p>
<button id="button">Click me to send a MouseEvent to the checkbox</button>
</p>
JavaScript
function simulateClick() {
// Get the element to send a click event
const cb = document.getElementById("checkbox");
// Create a synthetic click MouseEvent
let evt = new MouseEvent("click", {
bubbles: true,
cancelable: true,
view: window,
});
// Send the event to the checkbox element
cb.dispatchEvent(evt);
}
document.getElementById("button").addEventListener("click", simulateClick);
Kết quả
Thông số kỹ thuật
| Specification |
|---|
| Pointer Events> # interface-mouseevent> |
| CSSOM View Module> # extensions-to-the-mouseevent-interface> |
| Pointer Lock 2.0> # extensions-to-the-mouseevent-interface> |
Khả năng tương thích của trình duyệt
Xem thêm
- Cha mẹ trực tiếp của nó,
UIEvent PointerEvent: Dành cho các sự kiện con trỏ nâng cao, bao gồm cảm ứng đa điểm