当前位置: 首页 > 中文手册 > jQuery 选择器(:target)详解

jQuery 选择器(:target)详解

jQuery的:target选择器用于匹配id属性值等于当前文档URI的锚点名称的元素,将其封装为jQuery对象并返回。

如果当前文档的URI为http://www.365mini.com/#top,则:target选择器匹配id="top"的元素。

语法

jQuery1.9 新增该选择器。

jQuery( ":target" )

返回值

返回封装了id为当前文档URI的锚点名称的元素的jQuery对象。

注意:target选择器最好在$(window).load(callback)的函数参数callback中使用,否则在FireFox、Chrome等浏览器中可能会出现无法匹配到指定元素的问题(例如下面HTML示例代码中的n2)。

示例&说明

以下面这段HTML代码为例:

<div id="n1">
	<p id="n2">
		<span id="n3" class="abc">span2</span>
		<span id="n4">span3</span>
	</p>
</div>

假设当前文档的URI为http://localhost/demo.html#n2,则$(":target")所匹配的元素如以下jQuery代码所示:

// 选择了id为n2的<p>元素
var $target = $(":target");
if( $target.length == 1){ // 如果匹配到了元素
	var ele = $target[0]; // 获取JS原生DOM元素
	alert( ele.tagName + "#" + ele.id ); // P#n2	
}

上述jQuery代码在FireFox、Chrome等浏览器中可能无法获取到匹配的元素,你可以将:target选择器放在window.onload事件中处理:

// 在Chrome中,使用$(document).ready()仍然无法获取到匹配的元素
// 必须使用$(window).load()来获取
$(window).load(function(){
	var $target = $(":target");
	if( $target.length == 1){ // 如果匹配到了元素
		var ele = $target[0]; // 获取JS原生DOM元素
		alert( ele.tagName + "#" + ele.id ); // P#n2	
	}	
});
25 4
我们认为: 用户的主要目的,是为了获取有用的信息,而不是来点击广告的。因此本站将竭力做好内容,并将广告和内容进行分离,确保所有广告不会影响到用户的正常阅读体验。用户仅凭个人意愿和兴趣爱好点击广告。
我们坚信:只有给用户带来价值,用户才会给我们以回报。
CodePlayer技术交流群1CodePlayer技术交流群1

帮朋友打一个硬广告:

P2P网贷系统(Java版本) 新年低价大促销,多年P2P技术积累,系统功能完善(可按需定制,可支持第三方存管、银行存管),架构稳定灵活、性能优异、二次开发快速简单。 另可提供二次开发、安装部署、售后维护、安全培训等一条龙服务。

外行看热闹,内行看门道。可以自信地认为,在系统设计上,比市面上的晓风、迪蒙、方维、绿麻雀、国融信、金和盛等P2P系统要好。
深圳地区支持自带技术人员现场考察源代码、了解主要技术架构,货比三家,再决定是否购买。

也可推荐他人购买,一旦完全成交,推荐人可获得实际售价 10% 的返现。
有意向者,详情请 点击这里 联系,工作时间立即回复。