JQuery .hasClass for multiple values in an if statement

后端 未结 10 814
名媛妹妹
名媛妹妹 2020-12-02 18:14

I have a simple if statement as such:

if ($(\'html\').hasClass(\'m320\')) {

// do stuff 

}

This works as expected. However, I want to add

10条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-02 18:44

    Here is a slight variation on answer offered by jfriend00:

    $.fn.hasAnyClass = function() {
        var classes = arguments[0].split(" ");
        for (var i = 0; i < classes.length; i++) {
            if (this.hasClass(classes[i])) {
                return true;
            }
        }
        return false;
    }
    

    Allows use of same syntax as .addClass() and .removeClass(). e.g., .hasAnyClass('m320 m768') Needs bulletproofing, of course, as it assumes at least one argument.

提交回复
热议问题