Javascript resize event faulty

Issue

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.

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.

Answered By – sanchez

Answer Checked By – Cary Denson (AngularFixing Admin)

Leave a Reply

Your email address will not be published.