Question

I don't know why this doesn't work:

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

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

It logs the width right after load, but it doesn't do that when I resize.

Was it helpful?

Solution

Instead of executing the function (and passing the result) :

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

you should pass a reference to the function:

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

The function will execute when the event listener triggers.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top