概述
context属性返回传给jQuery()的原始的DOM节点内容,即jQuery()的第二个参数。如果没有指定,那么context指向当前的文档(document)。
可以与selector一起使用,用于精确检测选择器查询情况。这两个属性对插件开发人员很有用。
如果当时没有传入context参数,则该参数默认为当前文档(document)。该属性属于jQuery对象(实例)。
语法
jQuery1.3 新增该属性,但在 jQuery 1.10 中被标识为已过时。保持该属性只是为了在jQuery Migrate插件中支持live()方法的需要,该属性可能会在未来的版本中被移除。
jQueryObject.context
context属性的返回值是Element类型,哪怕当时传入jQuery(selector, context)函数的context参数不是Element类型。如果当时传入的context参数是jQuery对象,则返回该jQuery对象的context属性。
示例说明:
以下面这段HTML代码为例:
<div id="n1"> <div id="n2"> <ul id="n3"> <li id="n4">item1</li> <li id="n5">item2</li> <li id="n6">item3</li> </ul> </div> </div>
登录后复制
我们编写如下jQuery代码:
var $li = $("ul li"); // 返回当前文档的document对象 document.writeln( $li.context ); // [object HTMLDocument] document.writeln( $li.context === document ); // true var n1 = document.getElementById("n1"); var $n3 = $( "#n3", n1 ); // 返回n1 document.writeln( $n3.context ); // [object HTMLDivElement] document.writeln( $n3.context === n1 ); // true var $n2 = $("#n2"); var $n4 = $( "#n4", $n2 ); // 返回$n2的context属性:document对象 document.writeln( $n4.context ); // [object HTMLDocument] document.writeln( $n4.context === document ); // true var $n3 = $("#n3", n1); var $n5 = $( "#n5", $n3 ); // 返回$n3的context属性:n1 document.writeln( $n5.context ); // [object HTMLDivElement] document.writeln( $n5.context === n1 ); // true
登录后复制
示例:检测使用的文档内容
jQuery代码:
$("ul").append("<li>"+$("ul").context+"</li>") .append("<li>"+$("ul", document.body).context.nodeName+"</li>");
登录后复制
结果:
[object HTMLDocument]//如果是IE浏览器,则返回[object] BODY
登录后复制
【注】:$("ul", document.body).context.nodeName 这句的意思是在document.body里面找ul元素。
以上就是context属性是什么?context属性实例详解的详细内容,更多请关注Work网其它相关文章!