概述
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属性实例详解的详细内容。