jQuery Window Width else if statement

if-statement, jquery, width, window

Solution

You are missing a couple >= in your code, and windowSize is not being compared but assigned a new value as a result of statements like `windowSize = 480`. Try this version instead:

$(document).ready(function() {
    function checkWidth() {
        var windowSize = $(window).width();

        if (windowSize <= 479) {
            console.log("screen width is less than 480");
        }
        else if (windowSize <= 719) {
            console.log("screen width is less than 720 but greater than or equal to 480");
        }
        else if (windowSize <= 959) {
            console.log("screen width is less than 960 but greater than or equal to 720");
        }
        else if (windowSize >= 960) {
            console.log("screen width is greater than or equal to 960");
        }
    }

    // Execute on load
    checkWidth();
    // Bind event listener
    $(window).resize(checkWidth);
});​

Problem

I am wondering why my last else if statement never gets executed. I am trying to do this: ``` $(document).ready(function() { function checkWidth() { var windowSize = $(window).width(); if (windowSize <= 479) { console.log("screen width is less than 480"); } else if (windowSize = 480 && windowSize <= 719) { console.log("screen width is less than 720 but greater than or equal to 480"); } else if (windowSize = 720 && windowSize <= 959) { console.log("screen width is less than 960 but greater than or equal to 720"); } else if (windowSize >= 960) { console.log("screen width is greater than or equal to 960"); } } // Execute on load checkWidth(); // Bind event listener $(window).resize(checkWidth); });​ ``` Everything gets logged in the console except for the last else if. What am I doing wrong? Thanks, UPDATE: For anyone still interested, I highly recommend the enquire.js plugin: http://wicky.nillia.ms/enquire.js/ Hands down best approach I've found to recognizing media queries in JS.

Original source