jQuery是否存在“存在”功能?

jQuery是否存在“存在”功能?

如何在jQuery中检查元素的存在?

我当前的代码是这样的:

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

有更优雅的方式来解决这个问题吗?也许是插件或功能?


繁星点点滴滴
浏览 704回答 4
4回答

慕雪6442864

在JavaScript中,一切都是'真实'或'虚假',而数字0(和NaN)意味着false,其他一切true。所以你可以写:if ($(selector).length)你不需要那个>0部分。

元芳怎么了

是!jQuery.fn.exists = function(){ return this.length > 0; }if ($(selector).exists()) {     // Do something}这是对Jeff Atwood的Herding Code播客的回应

郎朗坤

如果你用过jQuery.fn.exists = function(){return ($(this).length > 0);}if ($(selector).exists()) { }你会暗示链接是可能的,但事实并非如此。这会更好:jQuery.exists = function(selector) {return ($(selector).length > 0);}if ($.exists(selector)) { }或者,从FAQ:if ( $('#myDiv').length ) { /* Do something */ }您还可以使用以下内容。如果jQuery对象数组中没有值,那么获取数组中的第一个项将返回undefined。if ( $('#myDiv')[0] ) { /* Do something */ }

繁花如伊

你可以用这个:// if element existsif($('selector').length){ /* do something */ }// if element does not existif(!$('selector').length){ /* do something */ }
打开App,查看更多内容
随时随地看视频慕课网APP