


Bagaimanakah Saya Boleh Mensimulasikan Peristiwa Klik Tetikus dalam JavaScript?
Dec 04, 2024 am 02:42 AMMensimulasikan Peristiwa Klik Tetikus dalam JavaScript
Walaupun kaedah document.form.button.click() ialah pendekatan biasa untuk mencetuskan klik butang, mungkin terdapat keadaan di mana anda mahu mensimulasikan acara onclick sebenar.
Mensimulasikan Acara tanpa Prototype.js
Untuk mensimulasikan acara onclick tanpa menggunakan Prototype.js, anda boleh memanfaatkan kod berikut:
function simulate(element, eventName) { // Define options and event type const options = extend(defaultOptions, arguments[2] || {}); let oEvent, eventType = null; for (const name in eventMatchers) { if (eventMatchers[name].test(eventName)) { eventType = name; break; } } // Ensure event type support if (!eventType) { throw new SyntaxError("Only HTMLEvents and MouseEvents interfaces are supported."); } // Create event using `document.createEvent` if (document.createEvent) { oEvent = document.createEvent(eventType); if (eventType === "HTMLEvents") { oEvent.initEvent(eventName, options.bubbles, options.cancelable); } else { oEvent.initMouseEvent( eventName, options.bubbles, options.cancelable, document.defaultView, options.button, options.pointerX, options.pointerY, options.pointerX, options.pointerY, options.ctrlKey, options.altKey, options.shiftKey, options.metaKey, options.button, element ); } element.dispatchEvent(oEvent); } else { // Internet Explorer fallback options.clientX = options.pointerX; options.clientY = options.pointerY; const evt = document.createEventObject(); oEvent = extend(evt, options); element.fireEvent("on" + eventName, oEvent); } return element; }
Menggunakan Fungsi Simulasi
Untuk menggunakan fungsi ini , hanya masukkan elemen dan nama acara:
simulate(document.getElementById("btn"), "click");
Anda juga boleh menentukan pilihan tambahan untuk menyesuaikan acara, seperti koordinat tetikus:
simulate(document.getElementById("btn"), "click", { pointerX: 123, pointerY: 321 });
Pendekatan ini memberikan lebih fleksibiliti dan kawalan ke atas mensimulasikan peristiwa klik tetikus dalam JavaScript.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mensimulasikan Peristiwa Klik Tetikus dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Ganti aksara rentetan dalam javascript

jQuery mendapatkan padding/margin elemen

HTTP Debugging dengan Node dan HTTP-Console

Tutorial Persediaan API Carian Google Custom
