dispatchEvent विधि
dispatchEvent विधि किसी तत्व पर इवेंट का अनुकरण करने की अनुमति देती है।
इसकी आवश्यकता क्यों है: उपयोगकर्ता द्वारा बटन दबाने, फॉर्म जमा करने के प्रयास
आदि का अनुकरण किया जा सकता है। इस स्थिति में, इवेंट वास्तविक इवेंट से
event.isTrusted गुण के अलावा किसी भी चीज़ से भिन्न नहीं होगा।
अमानक (आपके द्वारा गढ़े गए) नामों वाले इवेंट भी बनाए जा सकते हैं और फिर आवश्यकता पड़ने पर
उन्हें ट्रिगर किया जा सकता है। यह विधि उस तत्व पर लागू होती है जिस पर इवेंट को ट्रिगर करना है।
पैरामीटर के रूप में, यह विधि कंस्ट्रक्टर
new Event की सहायता से बनाई गई इवेंट (ऑब्जेक्ट) प्राप्त करती है।
सिंटैक्स
javascriptतत्व.dispatchEvent(इवेंट);
उदाहरण
मान लीजिए कि हमारे पास एक बटन है। इस बटन को दबाने पर एक संदेश प्रदर्शित होता है। आइए हम ऐसा करें कि जब माउस बटन पर ले जाया जाए तो यह बटन सोचे कि उस पर क्लिक किया गया है:
html<button id="button">बटन</button>javascriptlet button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('संदेश');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // इवेंट बनाएं
this.dispatchEvent(clickEvent); // बटन पर क्लिक का अनुकरण करें
});
Результат:
उदाहरण
आप अपने स्वयं के इवेंट (अपने स्वयं के नाम के साथ) बना सकते हैं
और फिर आवश्यक समय पर उन्हें ट्रिगर कर सकते हैं। आइए
बटन से एक showMessage इवेंट बांधें और
माउस ले जाने पर इस इवेंट को ट्रिगर करें:
html<button id="button">बटन</button>javascriptlet button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('संदेश');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // इवेंट बनाएं
this.dispatchEvent(showMessageEvent); // इवेंट का ट्रिगर होना
});
Результат: