我現在這樣做是爲了檢查是否兩個元素之一存在:如果兩個元素之一存在,做一些
if ($(".element1").length > 0 || $(".element2").length > 0) {
//do stuff...
}
有沒有更好的方式來改寫一樣嗎?我的意思是,.length
與.length > 0
相同?
我現在這樣做是爲了檢查是否兩個元素之一存在:如果兩個元素之一存在,做一些
if ($(".element1").length > 0 || $(".element2").length > 0) {
//do stuff...
}
有沒有更好的方式來改寫一樣嗎?我的意思是,.length
與.length > 0
相同?
if ($(".element1").is('*') || $(".element2").is('*')) {
// code
}
編輯(每評論)由多個類中選擇元素,在一個電話:
if ($(".element1, .element2").is('*')) {
// code
}
請注意,您也可以將兩個選擇器合併爲一個,如下所示:'$(「。element1,.element2」)'。 – bcat 2009-12-14 05:43:35
「.is()」與「.length> 0」相同嗎?有什麼區別,如果有的話? – 3zzy 2009-12-14 05:53:58
Nimbuz,使用.is()的好貼子 - http://www.bennadel.com/blog/1725-jQuery-s-is-Method-Checks-For-Any-Matching-Elements.htm – micahwittman 2009-12-14 06:07:00
所有的jQuery元素都有.length
屬性。你可以去:
if ($('img').length) // Implies: If this element exists..
See Extremely updated version of this plugin here!現在使用回調函數,因此如果您選擇,您可以保持可鏈接性。可完全替代if語句或仍可內語句中使用
您可以創建一個非常簡單的jQuery插件這一點,因爲這樣:
(function($) {
if (!$.exist) {
$.extend({
exist: function(elm) {
if (typeof elm == null) return false;
if (typeof elm != "object") elm = $(elm);
return elm.length ? true : false;
}
});
$.fn.extend({
exist: function() {
return $.exist($(this));
}
});
}
})(jQuery);
USE
// With ID
$.exist("#eleID");
// OR
$("#eleID").exist();
// With class name
$.exist(".class-name");
// OR
$(".class-name").exist();
// With just tag // prolly not best idea aS there will be other tags on site
$.exist("div");
// OR
$("div").exist();
有了您的if語句
if ($(".element1").exist() || $(".element2").exist()) {
...stuff...
}
當然,這個插件可以進一步擴展到更加花哨(基於處理一次多個呼叫,創建不存在的元素一個嬰兒車),但現在它的立場,它做了一個非常簡單,非常需要的功能......這個元素是否存在?返回True
或False
!$.isEmptyObject($.find('#urId'))
如果元素存在,這將返回 「真」,否則爲False
歡呼 :)
只需使用。每()。
$(".element1").each(function(){
//Do Something here
}
簡單...
$.fn.exists = function(ifExists) {
return this.length ? ifExists.call(this, this) : this;
};
用法:
$('.element1, .element2').exists(function(els) {
// this and els refers to $('.element1, .element2')
});
您可能會發現這個[問題](http://stackoverflow.com/questions/31044/is-there-一個存在的功能爲jQuery)回答你的問題。 – 2009-12-14 05:43:11