2017-05-12 1 views
0

Als ich versuchte, die .onclick -Eigenschaft zu ändern, hat es nicht funktioniert, also habe ich versucht zu debuggen und als ich die document.onclick -Eigenschaft alarmierte ich fand heraus, java Skript sagt, es ist der Wert ist null . Befehl in javascript:Javascript zeigt .onclick -Eigenschaft als null

document.getElementById("switch").onclick = "autoSlides(2)"; 

HTML:

<label class="switch"> 
     <input type="checkbox" id="switch" onclick="autoSlides(1)" /> 
     <div class="slider"></div> 
    </label> 

Voll Javascript:

function autoSlides(x) { 
    var timeOut; 
    if (x == 2) { 
     timeOut = null; 
     document.getElementById("switch").onclick = "autoSlides(1)" 
    } 
    if (x == 1) { 
     plusSlides(1); 
     document.getElementById("switch").onclick = "autoSlides(2)"; 
     timeOut = setTimeout(function() { autoSlides(1) }, 4000); 
    } 
} 

Antwort

0

Dies liegt daran, dass Sie eine Zeichenfolge zu onclick Ereignis hinzufügen.

Statt

document.getElementById("switch").onclick = "autoSlides(2)"; 

Verwendung:

document.getElementById("switch").onclick = function() {autoSlides(2)}; // calling a function autoSlides() 
+0

Als Rick erwähnt, wäre es die Ergebnisse der ‚autoSlides befestigen (2). Wenn Sie function verwenden, fügt es außerdem mehrere onClick-Ereignisse für das Element hinzu. – vabii

+0

Ah, das stimmt! Meine Antwort wurde aktualisiert ... – errata

Verwandte Themen