通过id获取元素 document.getElementById('div');//获取id为div的元素 通过class获取 document.getElementsByClassName('top'...);//获取页面中所有的class为top的元素集合 通过标签名获取 document.getElementsByTagName('p');//获取页面中所有的标签为p的元素集合 通过name获取 document.getElementsByName...('user');//获取页面中所有的name为user的元素集合 注意:通过class,name标签名抓取的元素是一个集合,即使该类只有一个符合要求的元素目标,也返回是一个集合,因此可以存储的变量,通过变量名...[0]获得第一个符合要求的标签目标....简单可以将返回的当做一个存储符合的数组,通过下标进行找到指定的位置. 当然也可以使用数组的方法返回,集合的目标数. alert(tops.length)可以提示出class为top的目标数
可以这样理解,页面中的元素有相同的父元素 的,并且里面又包含li元素的,那么就取第一个li元素,每个子类集合都要进行判断,直到找出所有符合要求的li元素; :last-child:这个也与上面相对了,...An+B的所有子节点,比如3n+1返回所处位置为父节点子元素的是3的倍数加1的那个子元素; :even:页面范围内的处于偶数位置的元素,如:li:even返回全部偶数li元素; :odd:页面范围内的处于奇数位置的元素...(n):第n个匹配元素(不包括)之后的元素(n从0开始),如:ul:gt(2)返回从第3个ul开始的所有ul元素(含第三个); :lt(n):第n个匹配元素(不包括)之前的元素(n从0开始),如:ul...F的所有子元素(F可以为E的子类的子类,甚至更远); E>F:匹配父元素E下的所有标签名为F的直接子元素; E+F:匹配所有标签名为F的元素,并且有E类型的兄弟节点在该F元素之前(E,F紧挨着); E~...C等效于*.C; E#I:匹配id为I的所有元素E,#I等效于*#I; E[A]:匹配带有属性A的所有元素E; E[A=V]:匹配所有属性A的值为V的元素E; E[A^=V]:匹配所有元素E,且A的属性值是
document.evaluate()就是通过xpath获取dom节点。 返回的结果通过.iterateNext()可以获得dom对象,每次调用会少一个,当没有时就返回空。...返回匹配到的第一个xpath对应的dom节点。...function x(xpath) { var result = document.evaluate(xpath, document, null, XPathResult.ANY_TYPE, null...); return result.iterateNext() } 返回匹配到xpath的dom节点个数。...); var i = 0; while(result.iterateNext()){ i++; } return i; } 如果想通过xpath获取iframe框架内的dom节点
查看焦点元素 通过 document.activeElement 可以获取哪个元素获取到了焦点。 如图所示,我的光标在这个查询框里。 ? 可以获取到该元素。 ?...使指定元素获取焦点 focus() 方法可以使某个元素获取焦点。 如图,我把输入框的这个元素存到变量 e 里面。 ?...然后手动把焦点指到别的元素上,再通过 focus() 方法让查询框重新获取焦点。 可以看到焦点获取成功了。 ?
我先写好一段 xpath 路径,然后通过该路径可以查到对应的元素节点。 ? 通过 document.evaluate('......', document).iterateNext() 方法可以用 xpath 路径定位到元素节点。...number-formcontrol u-form-control md" value="777.00" style="text-align: right;"> 如下图所示,可以看到我定位到对应的元素节点了
习惯了jquery的同学应该都知道获取元素样式的方式可以直接写成(obj).css(style);更方便的获取高度宽度等一些样式可以直接使用(obj).height()和 一、 getComputedStyle...是什么 getComputedStyle是一个可以获取当前元素所有最终使用的CSS属性值。...为什么要用这个属性呢,是因为通过document.getElementById(element).style.xxx可以获取元素的样式信息但是对于通过class属性引用的外部样式表就获取不到了。...但是getComputedStyle属性是只读的属性,只能读属性,不能设置,但是他可以获取到元素的最终样式信息。...例如,我们要获取一个元素的高度,可以类似下面的代码: alert((element.currentStyle?
、表格、文本,用js生成一个压缩包并弹出下载框。...步骤一:获取image image的显示用的是类型,所以很方便获取base64字串。...步骤二:获取表格 表格数据下载打算采用csv格式,比较简单不容易出错。...var blob = new Blob(['\ufeff' + csv], {type: 'text/csv,charset=UTF-8'}) return blob } 步骤三:获取上传的文件...this.fileObj = param.file //... uploadSectionFile是el-upload中绑定在http-request的自定义上传事件,从参数中获取文件对象后保存
方法主要分为两大类 第一类:通过属性获取。 通过 document.getElementById("fash") 获取到p页签。 ?...第二类:通过css选择器获取 通过 document.querySelector(".fash") 获取到p页签。
两种方式获取元素 // 浏览器中使用xpath获取元素,注意$x()获取出来的是数组,需要取[0] let elem1=$x("//div[@class='wtspe-filter-searcher-box...wtspe-theme-border wtspe-theme-word']")[0] // 和上面的等价 let elem2=document.querySelector(".wtspe-filter-searcher-box") 获取到元素后获取绑定的事件...getEventListeners(elem1) 给宝宝的用法: 第一步 let elem1=$x("//div[@class='wtspe-filter-searcher-box wtspe-button...wtspe-filter-button-theme wtspe-theme-bg05 wtspe-theme-border wtspe-theme-word']")[0]; 第二步 elem1.click(); 第三步 复制所需到自己的自动化脚本上简单修改下吧
网页被卷去的高:document.body.scrollTop 网页被卷去的左:document.body.scrollLeft 三.滚动相关 scrollHeight: 获取对象的滚动高度。...scrollWidth: 获取对象的滚动宽度 document.documentElement.scrollTop 垂直方向滚动的值 四.位置精确定位 scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离...scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置 offsetTop...:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置 五.坐标轴 event.clientX 相对文档的水平座标 event.clientY 相对文档的垂直座标 event.offsetX...相对容器的水平坐标 event.offsetY 相对容器的垂直坐标 六.width/clientWidth/offsetWidth以及height之间区别 width是指可见内容的宽 height是指可见内容的高
代码如下: const getOffset = el => { const { left, top } = el.getBoundingClientRe...
下面是js获取数组最后一个元素的三种方式 一、JavaScript pop() 方法 pop() 方法用于删除并返回数组的最后一个元素。...注意:pop() 方法将删除 arrayObject 的最后一个元素,把数组长度减 1,并且返回它删除的元素的值。如果数组已经为空,则 pop() 不改变数组,并返回 undefined 值。...(arr);//["js", "JavaScript"] 二、数组的 length 属性 var arr = new Array("js","JavaScript","jQuery"); var end...= arr[arr.length-1] console.log(end);//jQuery 三、JavaScript slice() 方法 slice() 方法可从已有的数组中返回选定的元素。...但是返回的数据类型是 array 不是 string 这点要注意一下!
; 获取元素的宽度:clientWidth;(width+padding) 获取元素的高度:clientHeight;(height+padding) 获取元素的宽度:offsetWidth;(width...+padding+border) 获取元素的高度:offsetHeight;(height+padding+border) 获取元素最左边距已定位的父级对象的长度(若无父级对象或父级对象没有定位,就是距离文档顶部...).scrollLeft(); 获取或设置元素的宽度:$(obj).width();(width) 注意只是元素的宽度,不包括padding 获取或设置元素的高度:$(obj).height();(height...) 注意只是元素的高度,不包括padding 获取或设置元素的宽度:$(obj).innerWidth(); (width + padding) 获取或设置元素的高度:$(obj).innerHeight...(); (height + padding) 获取或设置元素的宽度:$(obj).outerWidth(); (width + padding + border) 获取或设置元素的高度:$(obj).outerHeight
包含文本和注释节点 原生JS有一个常见的小技巧那就是通过元素的previousSibling 属性,额外需要注意的是该属性会遍历text节点,即回车键。...从零开始我们可以这样的代码获取到一个元素属于父元素的第几个子元素。 var child = this; while( (child = child.previousSibling) !...= null ) i++; 案例代码如下: Html: 123abc JS...= null) i++; console.log(i) //console 1 通过循环遍历previousSibling 属性是否为null这个小技巧,就可以获取到当前元素在父元素中的位置了。
在js中,offsetParent 属性表示最近的上级定位元素。...要获取相对父级元素的位置,可以先判断 offsetParent 属性是否指向父元素,如果是,则直接使用 offsetLeft 和 offsetTop 属性获取元素相对于父元素的距离;否则分别获得当前元素和父元素距离窗口的坐标...//获取指定元素距离父元素左上角的偏移坐标//参数:e表示获取位置的元素//返回值:返回对象直接量,其中属性x表示x轴偏移距离,属性y表示y轴偏移距离function getP (e) { if...offsetLeft属性值 var y = e.offsetTop; //读取offsetTop属性值 } else { //否则调用getW()扩展函数获取父元素的偏移位置,并返回它们的差值..."x" : x, "y" : y },}下面调用该扩展函数获取指定元素相对父元素的偏移坐标。
var a = document.querySelector("iframe") 获取到iframe。...var b = a.contentWindow.document 获取到iframe里的document。 b.getElementById("...") 就能获取到iframe里元素的id了。
jQuery获取: jQuery.parent(expr),找父亲节点,可以传入 expr 进行过滤,比如 $("span").parent() 或者 $("span").parent(".class"...) jQuery.parents(expr),类似于 jQuery.parents(expr) ,但是是查找所有祖先元素,不限于父元素 jQuery.children(expr),返回所有子节点,这个方法只会返回直接的孩子节点...,而 jQuery.find(),的返回结果,不会有初始集合中的内容,比如 $("p").find("span") ,是从 元素开始找 ,等同于 $("p span") JS获取:...; //获得s的最后一个子节点 JS获取节点父级,子级元素:JS的方法会比JQUERY麻烦很多,主要则是因为FF、谷歌浏览器会把你的换行也当作DOM元素:空的text元素,目前IE也是这样 原生的JS获取ID为test的元素下的子元素。
分析网站本节我们来爬取豆瓣电影,在实战开始前,我们需要搞懂爬取的流程,在清楚爬取的步骤后,我们方可事半功倍导入需要的库分析获取网站URL获取HTML页面etree解析使用Xpath插件进行测试标签编写Xpath...start={}'.format(i) urls.append(url)获取每页URL中的影评URL接下来我们需要获取每页中影评的具体URL右击鼠标点击检查,我们就会看到具体的URL,为了测试Xpath...提取每个电影影评的url detail_url = html.xpath('//h2/a/@href') detail_urls.append(detail_url)获取电影影评数据做完先前的工作...,这里可以说是核心的步骤了,获取真正有用的数据获取电影名title = html.xpath('//div[@class="subject-title"]/a/text()')[0][2:]这里会有人好奇为什么后面需要切一下...,原因如下,前面有一些无用的数据,需要清除获取评论者和评分commenter = html.xpath('//header/a/span/text()')[0]rank = html.xpath('//
页面返回的element是非常多的东西,有很多并不是我们所需要的,所以需要对数据进行筛选。...//div[@class='pl2']/a/text()")[0].replace("/","").strip() item['href'] = table.xpath("....//div[@class='pl2']/a/@href")[0] item['src'] = table.xpath("....strip()用来移除首尾的空格。...replace("/","")表示用空字符来替换"/", 需要注意的是在循环时路径前必须是对于当前路径,也就是必须加//前必须加. 4.输出如下 注:谷歌浏览器也提供了xpath插件,可以在谷歌应用商店进行下载
,相当于 XPATH 对于 XML。...(一)JsonPath与Xpath用法对比 (二)Java使用Jsonpath解析json数据 (三)Js获取Json每个节点的JsonPath (四)将输出结果转换成树形结构 JsonPath与Xpath...就是不管位置,选择所有符合条件的条件 * * 匹配所有元素节点 @ n/a 根据属性访问,Json不支持,因为Json是个Key-value递归结构,不需要。..." + JSONPath.eval(jsonObject, "$.store.bicycle['color','price']")); } Js获取Json每个节点的JsonPath# 准备json...name: '动作电影' } ] } ] } 遍历Json对象获取每个节点的深度与
领取专属 10元无门槛券
手把手带您无忧上云