मैं जेएस के लिए नया हूं, मैंने यूट्यूब पर कुछ क्रैश कोर्स देखा और उसी समय इसे करने की कोशिश की। मैं परिवर्तनों को शीघ्रता से देखने के लिए एक एक्सटेंशन live server के साथ विजुअल स्टूडियो कोड का उपयोग कर रहा हूं।

मेरे जेएस कोड में:

    //SUBSCRIBE
    var subscribeEmail = document.getElementById('subscribe-email');
    var subscribeSubmit = document.getElementById('subsribe-link-btn');

//HEADER
    var headerRootWrapper = document.getElementById("navbar-wrapper");
    console.log(headerRootWrapper);
    var show = document.getElementById('sidebar-wrapper');

//LOGO
    var webLogo = document.getElementById('logo');
    console.log(webLogo);

//MENU BAR
    var menuBar = document.getElementById('menu-bar').addEventListener('click', menuSlideLeft());
    console.log(menuBar);
    var sideMenuId = document.getElementById('sidebar-wrapper');

//SEARCH BAR
    var searchBar = document.getElementById('searchBarShow').addEventListener('click',searchStart());

// METHOD 
    function menuSlideLeft() {
        alert("Fire");

}

मेरी एचटीएमएल फाइल से, मैंने नीचे जेएस स्क्रिप्ट जोड़ा (बॉडी टैग के अंदर नहीं)। यह हमेशा मेन्यूबार पर क्लिक किए बिना विधि menuSlideLeft() को प्रारंभ में निष्पादित करता है।

<script src="js/jscript.js"></script>

js

0
RoCk RoCk 2 अप्रैल 2018, 16:09

2 जवाब

सबसे बढ़िया उत्तर

अपने ईवेंट श्रोता से कोष्ठक निकालें, जो फ़ंक्शन को कॉल करता है। इसके बजाय उपयोग करें:

.addEventListener('click', menuSlideLeft);
4
j08691 2 अप्रैल 2018, 13:12

आप इसे पैरामीटर के रूप में पास करने के बजाय फ़ंक्शन को कॉल कर रहे हैं। समाधान:

document.getElementById('menu-bar').addEventListener('click', menuSlideLeft);
1
Oleksandr Oleksiv 2 अप्रैल 2018, 13:16