2014-04-17 8 views
5

arbeiten, warum dies nicht funktioniert:javascript Grßenänderungsereignis Ich weiß nicht, nicht

window.addEventListener('load', setSize(), false); 
window.addEventListener('resize', setSize(), false); 

function setSize(){ 
    width = window.innerWidth; 
    console.log(width); 
} 

Es protokolliert nach Belastung die Breite rechts, aber es funktioniert nicht, wenn ich die Größe neu.

Antwort

18
window.addEventListener('load', setSize(), false); 
window.addEventListener('resize', setSize(), false); 

sollte sein:

window.addEventListener('load', setSize, false); 
window.addEventListener('resize', setSize, false); 

Statt die Funktion auszuführen, müssen wir einen Verweis auf sie zu übergeben.

+2

@OP - Beachten Sie, dass der Unterschied "setSize()" das ERGEBNIS als Argument übergeben wird und "setSize" die Funktion selbst als Argument übergeben wird. Das ist der Unterschied. –

Verwandte Themen