Ответ 1
¡¡¡ОБНОВЛЕНИЕ!!!
См. мой ответ ЗДЕСЬ ] для более надежного плагина
Вы можете легко сократить @Chris ответ:
if($("#container .search_element").length) { ...
Вы также можете сделать то же самое с полезным плагином, который я сделал для этого:
jsFiddle
(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 your if statement
if($("#container .search_element").exist()) { ...
// 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();
Конечно, этот плагин можно было бы дополнительно расширить, чтобы быть намного более причудливым (обрабатывая сразу несколько вызовов, создавая несуществующие элементы на основе коляски), но, поскольку он стоит сейчас, он выполняет очень простую и очень необходимую функцию... Существует ли этот элемент? return True
или False