मैं केवल डीओएम कार्यक्रमों को क्लोनिंग या फिर से प्रेषित करने का एक सरल और अमूर्त तरीका ढूंढ रहा हूं। मुझे डोम नोड्स क्लोन करने में दिलचस्पी नहीं है।डीओएम कार्यक्रमों को क्लोन या फिर प्रेषित कैसे करें?
मैं थोड़ा प्रयोग किया गया है, DOM Events specification पढ़ सकते हैं और मैं कोई स्पष्ट उत्तर नहीं मिला।
आदर्श रूप में, मैं कुछ के लिए देख रहा हूँ के रूप में सीधी-सपाट रूप में:
handler = function(e){
document.getElementById("decoy").dispatchEvent(e)
}
document.getElementById("source").addEventListener("click", handler)
इस कोड उदाहरण, ज़ाहिर है, काम नहीं करता। एक डॉम अपवाद है जिसमें कहा गया है कि वर्तमान में घटना भेजी जा रही है - जाहिर है।
मैं मैन्युअल रूप से बचने के लिए, document.createEvent()
के साथ नए घटनाओं बनाने के लिए उन्हें आरंभ और उन्हें भेजने चाहते हैं।
वहाँ उपयोग के इस मामले को एक सरल उपाय है?
तुम क्यों घटनाओं redispatch करने की आवश्यकता है (jQuery उपयोगकर्ताओं के लिए आप का उपयोग करने के
e.originalEvent.constructor
e.constructor
के बजाय आवश्यकता हो सकती है)? – josh3736मुझे इसे सीएसएस क्षेत्र के लिए एक समाधान के रूप में चाहिए जो वर्तमान में बाल नोड घटनाओं को प्रेषित नहीं करता है। क्षेत्र केवल बच्चे नोड सामग्री प्रस्तुत करते हैं, वे पेरेंट नोड्स के रूप में कार्य नहीं करते हैं। –