jquery – 如何检查元素是否存在于另一个元素中?

我想,jQuery,了解一个元素是否存在于另一个元素中.

有点像:

if($('#container').find('.search_element'))

如果.search_element进入#container,则必须返回YES,否则为否.

我该怎么做?尝试使用$.contains(‘#container’,’.search_element’),但似乎这个函数不起作用…

解决方法

¡¡¡更新!

看到我的答案[HERE]一个更强大的插件

您可以轻松缩短@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();

当然,这个插件可以进一步扩展到更多的花哨(一次处理多个调用,基于一个pram创建不存在的元素),但现在它是一个非常简单,非常需要的函数…这个元素存在吗?返回True或False

jsFiddle

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...