html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

仿jQuery的siblings效果的js代码_javascript技巧_

[ ] 已经帮助:人解决问题
复制代码 代码如下:

function siblings(o){//参数o就是想取谁的兄弟节点,就把那个元素传进去
var a=[];//定义一个数组,用来存o的兄弟元素
var p=o.previousSibling;
while(p){//先取o的哥哥们 判断有没有上一个哥哥元素,如果有则往下执行 p表示previousSibling
if(p.nodeType===1){
a.push(p);
}
p=p.previousSibling//最后把上一个节点赋给p
}
a.reverse()//把顺序反转一下 这样元素的顺序就是按先后的了
var n=o.nextSibling;//再取o的弟弟
while(n){//判断有没有下一个弟弟结点 n是nextSibling的意思
if(n.nodeType===1){
a.push(n);
}
n=n.nextSibling;
}
return a//最后按从老大到老小的顺序,把这一组元素返回
}
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助