你如何检查选择器是否匹配jQuery中的某些东西?

这个问题在这里已经有了答案:

  • jQuery有没有“存在”功能? 36个答案

  • 正如其他评论者所建议的那样,最有效的方法似乎是:

    if ($(selector).length ) {
        // Do something
    }
    

    如果你绝对必须有一个exists()函数 - 这会更慢 - 你可以这样做:

    jQuery.fn.exists = function(){return this.length>0;}
    

    然后在你的代码中你可以使用

    if ($(selector).exists()) {
        // Do something
    }
    

    在这里回答


    不,jQuery总是返回一个jQuery对象,无论选择器是否匹配。 你需要使用.length

    if ( $('#someDiv').length ){
    
    }
    

    如果你使用:

    jQuery.fn.exists = function(){return ($(this).length > 0);}
    if ($(selector).exists()) { }
    

    你会暗示链接是不可能的。

    这会更好

    jQuery.exists = function(selector) {return ($(selector).length > 0);}
    if ($.exists(selector)) { }
    
    链接地址: http://www.djcxy.com/p/14669.html

    上一篇: How do you check if a selector matches something in jQuery?

    下一篇: How not to use global variables in c