首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何判断元素是否被jQuery包装?

问如何判断元素是否被jQuery包装?
EN

Stack Overflow用户
提问于 2009-08-13 09:46:12
回答 5查看 4.5K关注 0票数 15

如何判断一个对象是否被jQuery包装?

代码语言:javascript
复制
var obj = $('div');

if(obj is a jQuery wrapped object)
{
   then do something
}

我是Javascript世界的新手。

提前谢谢。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-08-13 09:54:00

这就是了:

代码语言:javascript
复制
var isJQuery = obj instanceof jQuery;  // or obj instanceof $;
票数 26
EN

Stack Overflow用户

发布于 2009-08-13 10:29:05

代码语言:javascript
复制
if (obj.jquery) {
    /* Do something */
}

这是最简单的方法。检查对象的构造函数是另一种选择,但请注意,它不能跨全局上下文工作(例如,在父页面和框架之间)。

票数 2
EN

Stack Overflow用户

发布于 2009-08-13 10:06:34

您可以像这样测试:

代码语言:javascript
复制
if(obj instanceof jQuery) {
    // ...
}

但是,说HTML元素“包装”在jQuery对象中并不完全正确,相反,jQuery对象是零个或多个HTML元素的集合。因此,如果您真的想要小心,可以先测试它是否包含任何元素,如下所示:

代码语言:javascript
复制
if(obj instanceof jQuery && obj.length > 0) {
    var element = obj[0];
    // do something with element
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1271052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档