// this e works
document.getElementById("p").oncontextmenu = function(e) {
e = e || window.event;
var target = e.target || e.srcElement;
console.log(target);
};
// this e is undefined
function doSomething(e) {
e = e || window.event;
var target = e.target || e.srcElement;
console.log(target);
}
<p id="p" onclick="doSomething(e)">
<a href="#">foo</a>
<span>bar</span>
</p>
कुछ समान प्रश्न पूछे गए हैं।जावास्क्रिप्ट में एक इनलाइन ईवेंट हैंडलर को तर्क के रूप में ईवेंट कैसे पास करें?
लेकिन मेरे कोड में, मैं बच्चे के तत्वों, जो, क्लिक किया गया है a
या span
की तरह पाने के लिए कोशिश कर रहा हूँ।
तो ईवेंट हैंडलर के लिए तर्क के रूप में event
को पास करने का सही तरीका क्या है, या तर्क के बिना हैंडलर के अंदर ईवेंट कैसे प्राप्त करें?
संपादित
मैं addEventListener
और jQuery
के बारे में पता कर रहा हूँ, inline
घटना हाथ के बल्लेबाज को घटना पारित करने के लिए एक समाधान प्रदान करें।
https://developer.mozilla.org/en/docs/DOM/EventTarget.addEventListener –
क्या AddEventListener पर स्विच करने के बजाय इनलाइन ईवेंट हैंडलर का उपयोग करने का कोई अच्छा कारण है? http://en.wikipedia.org/wiki/Unobtrusive_JavaScript – Xotic750