काम नहीं कर रहा है, मैं ईवेंट श्रोताओं का उपयोग करना चाहता हूं ताकि ईवेंट पर एक div के अंदर div पर बुलबुले को रोक दिया जा सके। यह काम करता है मानकों मैं कैसे इरादा गुजर:लूप-गुजरने वाले पैरामीटर के लिए जावास्क्रिप्ट एकाधिक गतिशील addEventListener
<div onclick="doMouseClick(0, 'Dog', 'Cat');" id="button_id_0"></div>
<div onclick="doMouseClick(1, 'Dog', 'Cat');" id="button_id_1"></div>
<div onclick="doMouseClick(2, 'Dog', 'Cat');" id="button_id_2"></div>
<script>
function doMouseClick(peram1, peram2, peram3){
alert("doMouseClick() called AND peram1 = "+peram1+" AND peram2 = "+peram2+" AND peram3 = "+peram3);
}
</script>
हालांकि, मैं इस के साथ एक पाश में कई घटना श्रोताओं बनाने की कोशिश की:
<div id="button_id_0"></div>
<div id="button_id_1"></div>
<div id="button_id_2"></div>
<script>
function doMouseClick(peram1, peram2, peram3){
alert("doMouseClick() called AND peram1 = "+peram1+" AND peram2 = "+peram2+" AND peram3 = "+peram3);
}
var names = ['button_id_0', 'button_id_1', 'button_id_2'];
for (var i=0; i<names.length; i++){
document.getElementById(names[i]).addEventListener("click", function(){
doMouseClick(i, "Dog", "Cat");
},false);
}
</script>
यह सही ढंग से प्रत्येक div के लिए क्लिक समारोह प्रदान करती है, लेकिन प्रत्येक के लिए पहला पैरामीटर, peram1
, 3
है। मैं peram1
के लिए i
के विभिन्न मूल्यों को पारित करने वाले 3 अलग-अलग ईवेंट हैंडलर की अपेक्षा कर रहा था।
ऐसा क्यों हो रहा है? क्या ईवेंट हैंडलर सभी अलग नहीं हैं?
बहुत बहुत धन्यवाद:)! – KDawg
धन्यवाद। मैं सोच रहा था कि क्यों 'मैं 'गुंजाइश से बाहर गिर रहा था और एक' अपरिभाषित 'तत्व लौट रहा था। –