循环获取items元素
-
以掘金示例
获取掘金首页的items元素 页面:掘金] 目的:获取items的元素的点赞数和分享数 js示例
doc = document.querySelector("#juejin > div.view-container.container > main > div > div > div > div > div > ul") ;
//doc.childNodes[i] 获取节点
//elements = doc.children;//获取元素
for(let i=0;i < doc.childNodes.length;i++){
console.log('start')
if (doc.childNodes[i].nodeType == 1 &&
doc.childNodes[i].querySelector('li.item.like>a > span.count') !== null
&& doc.childNodes[i].querySelector('li.item.comment>a > span.count') !== null
) {
like = doc.childNodes[i].querySelector('li.item.like>a > span.count').textContent;
comment = doc.childNodes[i].querySelector('li.item.comment>a > span.count').textContent;
total = Number(like) + Number(comment);
console.log(total,i);
}
};
小结:
-
判断元素是否存在:
if (document.querySelector('.myelement') !== null) {
alert('The element "myelement" exists in the page.');
} else {
alert('The element "myelement" does not exists in the page.');
}
-
判断document.querySelector().childNodes[i] 是否是一个节点:
doc.childNodes[i].nodeType == 1
document.querySelector().childNodes[i] 获得是节点,可以使用querySelector;
document.querySelector().children获得是属性,不能使用querySelector;
-
element.ownerDocument
will give you a reference to the document to which any DOM element belongs.这个ownerDocument获得是全局document,不是节点的document; -
For 循环
for(let i=0;i < doc.childNodes.length;i++){
console.log('start')
} -
if多条件判断
if ((Type == 2 && PageCount == 0) || (Type == 2 && PageCount == '')) {
PageCount= document.getElementById('<%=hfPageCount.ClientID %>').value;
} -
setInterval周期(以毫秒计)来调用函数或计算表达式。
每三秒(3000 毫秒)弹出 "Hello" :
setInterval(function(){ alert("Hello"); }, 3000); -
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。
3 秒(3000 毫秒)后弹出 "Hello" :
setTimeout(function(){ alert("Hello"); }, 3000);
参考:
javascript - How to get child element by class name? - Stack Overflow]
javascript - Get document object from a child element - Stack Overflow]