class原⽣js获取⽗元素_js定位⼤全获取节点的兄弟,⽗级,
⼦级元素含robot实例...
⼀、js定位兄弟,⽗级,⼦级元素
所有DOM⽅法
var el = ElementById('xxx');
var el = ElementByName('xxx');
var els = ElementsByClassName('highlight');
var els = ElementsByTagName('td');
tips:
getElementsByClassName()是HTML5 新增的DOM API。IE8以下不⽀持。
对于现代浏览器开发,还可以使⽤querySelector()和querySelectorAll()。他们的功能更加强⼤。
=======================附注=========================
解释:getElementsByClassName()是HTML5的DOM API。
举个栗⼦:ElementsByClassName("wrapper"); //取得DOM中所有class = "wrapper"的元素
解释:querySelector()和querySelectorAll()
是新标准的Selectors API(选择符API)。IE8+、FF3.5+、Safari 3.1+、Chrome、Opera 10+⽀持
querySelector()接受⼀个css选择器作为参数,然后返回DOM中匹配的第⼀个元素
querySelectorAll()接受⼀个css选择器作为参数,然后返回DOM中匹配的元素的集合数组
原⽣的JS获取ID为test的元素下的⼦元素。可以⽤:
var a = ElementById("test").getElementsByTagName("div"); 这样是没有问题的
此时a.length=2;
var s= ElementById("test");
del_ff(s);//清理空格
var chils= s.childNodes; //得到s的全部⼦节点
var par=s.parentNode; //得到s的⽗节点
var Sibling; //获得s的下⼀个兄弟节点
var ps=s.previousSibling; //得到s的上⼀个兄弟节点
var fc=s.firstChild; //获得s的第⼀个⼦节点
var lc=s.lastChild; //获得s的最后⼀个⼦节点
}
下⾯介绍JQUERY的⽗,⼦,兄弟节点查⽅法
jQuery.parent(expr) ⽗亲节点,可以传⼊expr进⾏过滤,⽐如$("span").parent()或者$("span").parent(".class")
jQuery.parents(expr),类似于jQuery.parents(expr),但是是查所有祖先元素,不限于⽗元素
jQuery.children(expr).返回所有⼦节点,这个⽅法只会返回直接的孩⼦节点,不会返回所有的⼦孙节点
jQuery对象返回,children()则只会返回节点
jQuery.prev(),返回上⼀个兄弟节点,不是所有的兄弟节点
jQuery.prevAll(),返回所有之前的兄弟节点原生js和js的区别
<(),返回下⼀个兄弟节点,不是所有的兄弟节点
jQuery.siblings(),返回兄弟妹节点,不分前后
jQuery.find(expr),跟jQuery.filter(expr)完全不⼀样。
jQuery.filter()是从初始的jQuery对象集合中筛选出⼀部分,⽽
jQuery.find()的返回结果,不会有初始集合中的内容,⽐如$("p"),find("span"),是从
元素开始,等同于$("p span")
robotframework实例:
Execute Javascript var ElementsByName("select_Start")
(3).lick("this.previousSibling.click()");
//先根据name取得⼀个元素,但执⾏onlick的是下⾯这个元素,所以需要先定位下⾯的兄弟元素(⽤nextSibling取得),最后⽤下⾯含有onclick的元素执⾏onlick事件。
实例1:
实例2:
Execute Javascript var ElementById("viewtable").getElementsByTagName("tbody")
(0).getElementsByTagName("td"); for(var i=0;i
{if(ele[i].innerHTML=="${searchTitle}") { ele[i].onclick()} }
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论