然后是自己的所有弟弟:$("#b")nextAll()
接着是弟弟们的所有后代:$("#b")nextAll()find("")
然后是自己所有祖先的弟弟(父亲的弟弟、祖父的弟弟……):$("#b")parents()nextAll()
最后是所有祖先的弟弟们的所有后代:$("#b")parents()nextAll()find("")<style>
red{
background-color: red;
}
</style>
<div id="demo">
<a href="javascript:void(0)">萝卜</a>
<a href="javascript:void(0)">青椒</a>
<a href="javascript:void(0)">白菜</a>
<a href="javascript:void(0)">土豆</a>
</div>$(function(){
//绑定单击事件
//将事件绑定在DIV上,是利用事件的冒泡原理, 这样使用,
//使代码结构看起来更整洁,更容易搜索到单击事件发生的位置
//推荐在开发插件,或者其它比较复杂的功能时候,将事件绑定到父级容器
//这样即使此例中的A标签是后来通过 JAVASCRIPT脚本添加进来的,
//同样能够正确地处理
$('#demo')click(function(event){
var $target = $(eventtarget);
//判断如果点击的A标签,则执行以下代码
if(/^a$/itest(eventtargettagName)){
$targetaddClass('red')
siblings('a')removeClass('red');
alert('你点击了我:'+$targettext());
}
});
});
这些jquery的一些查找方法:可以看看
jQueryparent(expr) //找父元素
jQueryparents(expr) //找到所有祖先元素,不限于父元素
jQuerychildren(expr) //查找所有子元素,只会找到直接的孩子节点,不会返回所有子孙
jQuerycontents() //查找下面的所有内容,包括节点和文本。
jQueryprev() //查找上一个兄弟节点,不是所有的兄弟节点
jQueryprevAll() //查找所有之前的兄弟节点
jQuerynext() //查找下一个兄弟节点,不是所有的兄弟节点
jQuerynextAll() //查找所有之后的兄弟节点
jQuerysiblings() //查找兄弟节点,不分前后
jQueryfind(expr) //跟jQueryfilter(expr)完全不一样,jQueryfilter(expr)是从初始的
jQuery对象集合中筛选出一部分,而jQueryfind()的返回结果,不会有初始集中
筛选出一部分,而jQueryfind()的返回结果,不会有初始集合中的内容,比如:
$("p")find("span")是从元素开始找,等于$("p span")
前两位所写:一个是查找全部的input控件的同辈元素,另一个是查找下一个同辈元素。我以前也遇到过这种问题,向下找容易,向上找较麻烦,我就直接在前面放一个隐藏域,再通过这个隐藏来向下找就可以找到上一个兄弟元素了$('#id')siblings()
当前元素所有的兄弟节点
$('#id')prev()
当前元素前一个兄弟节点
$('#id')prevaall()
当前元素之前所有的兄弟节点
$('#id')next()
当前元素之后第一个兄弟节点
$('#id')nextall()
当前元素之后所有的兄弟节点
这三个方法都可以添加选择器,给出选择条件,就能找到你指定的兄弟节点了。var nodes = $('#id')parent()parent()siblings();
jQueryparent()定位父节点,jQuerysiblings()定位兄弟节点。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)