用 jQuery 包装两次 HTML 元素是一种安全的操作,因为它返回相同 DOM 元素的实例:
var $a = $('#foo');
var $b = $($a);
alert($b.get(0) === $a.get(0)); // true
它允许灵活设置配置对象,这些对象可能包含选择器、DOM 元素或 jQuery 实例。
我不知道,所以在我的个人库中,我使用方法扩展了 jQuery,以安全地包装和解开对象。
jQuery 核心中是否有一个安全的向后操作来从它们的相关 jQuery 实例中解开 DOM 元素?
我的意思是这样的事情:
function unwrap(obj) {
return (obj instanceof jQuery) ? obj.get(0) : obj;
}
这足够聪明,可以避免每次都有条件检查。