2010-03-03 13 views
9

पर ईवेंट आग लगती है जब मैं निम्न स्क्रिप्ट चलाता हूं, तो ईवेंट हमेशा पृष्ठ लोड पर आग लगती है। मुझे यकीन नहीं है कि मैं यहां क्या गलत कर रहा हूं, मैं तत्व बनाता हूं, इसे डीओएम में ढूंढता हूं, फिर श्रोता को संलग्न करता हूं, लेकिन यह पृष्ठ हमेशा लोड होता है जब पृष्ठ लोड होता है और जब तत्व क्लिक नहीं किया जाता है।जावास्क्रिप्ट "addEventListener" पृष्ठ लोड

<script type="text/javascript" language="javascript"> 
    document.write("<div id=\"myDiv\">I am a div</div>"); 
    el = document.getElementById("myDiv"); 
    el.addEventListener("click", alert("clicktrack"), false); 
</script> 

उत्तर

24
el.addEventListener("click", alert("clicktrack"), false); 

जब इस लाइन निष्पादित किया जाता है, alert कहा जाता है और undefined लौट कर दिया जाएगा। अलर्ट कोड को पास करने के लिए आपको इसे फ़ंक्शन में लपेटने की आवश्यकता है।

el.addEventListener("click", function() { alert("clicktrack"); }, false); 
1

कैसे के बारे में:

<script type="text/javascript" language="javascript"> 
    document.write("<div id=\"myDiv\">I am a div</div>"); 
    el = document.getElementById("myDiv"); 
    el.addEventListener("click", function() { alert("clicktrack"); }, false); 
</script> 
संबंधित मुद्दे