您的浏览器过于古老 & 陈旧。为了更好的访问体验, 请 升级你的浏览器
Ready 发布于2014年08月27日 08:01

原创 jQuery.prev() 函数详解

6541 次浏览 读完需要≈ 6 分钟

内容目录

prev()函数用于筛选每个匹配元素之前紧邻的同辈元素,并以jQuery对象的形式返回。

你还可以使用指定的选择器进一步缩小筛选范围,筛选出符合指定选择器的元素。

与该函数相对的是next()函数,用于筛选每个匹配元素之后紧邻的同辈元素。

该函数属于jQuery对象(实例)。

语法

jQueryObject.prev( [ selector ] )

参数

参数 描述
selector 可选/String类型指定的选择器字符串。

prev()函数将在当前jQuery对象每个匹配元素的上一个相邻同辈元素中筛选符合指定选择器的元素。

如果省略selector参数,则选取每个匹配元素的上一个相邻的同辈元素。

返回值

prev()函数的返回值为jQuery类型,返回一个新的jQuery对象,该对象封装了当前jQuery对象所有匹配元素的上一个紧邻的符合指定选择器的同辈元素。

如果没有符合条件的元素,则返回空的jQuery对象。

示例&说明

以下面这段HTML代码为例:

<p id="e1">
	<span id="e2" class="site">
		<span id="e3" class="item site-name">CodePlayer</span>
		<span id="e4" class="item site-desc">专注于编程开发技术分享</span>
	</span>
	<span id="e5" class="site-url">https://codeplayer.vip</span>
</p>
<p id="e6">
	JavaScript<span id="e7" class="highlight">jQuery</span>
	<a id="e8" href="https://codeplayer.vip">CodePlayer</a>
	<span id="e9" class="highlight">PHP</span>
</p>

以下jQuery示例代码用于演示prev()函数的具体用法:

// 返回jQuery对象所有匹配元素的标识信息数组
// 每个元素形如:tagName或tagName#id(如果有id的话)
function getTagsInfo($doms){
	return $doms.map(function(){
		return this.tagName + (this.id ? "#" + this.id : "");
	}).get();
}

//匹配所有span元素:e2、e3、e4、e5、e7、e9
var $span = $("span");

//匹配所有span元素之前紧邻的同辈元素:e3、e2、e8
//e2 => 无【没有上一个紧邻的同辈元素,因为它是同辈元素中的第一个,下同】
//e3 => 无
//e4 => e3
//e5 => e2
//e7 => 无
//e9 => e8
var $span_prev = $span.prev( );
document.writeln( getTagsInfo( $span_prev ) ); // SPAN#e3,SPAN#e2,A#e8

//匹配所有span元素之前紧邻的同辈span元素
var $span_prev_span = $span.prev( "span" );
document.writeln( getTagsInfo( $span_prev_span ) ); // SPAN#e3,SPAN#e2

运行代码

  • CodePlayer技术交流群1
  • CodePlayer技术交流群2

0 条评论

撰写评论

打开导航菜单