art*_*tgb 2 html javascript dom
我将检查html元素是否包含它自己的文本.
例子是
<div>Text<tag></tag>Text</div>和<div>Text</div>.
有些不合适的事情是
<div><tag></tag><p></p></div>
我的代码片段是
flag = false;
for ( var j = 0; j < item.childNodes.length; j ++){
if(item.childNodes[j].tagName == ""){
flag = true;
}
}
Run Code Online (Sandbox Code Playgroud)
但它没有用,有人可以帮助我吗?
我所期待的是
<div>Text<tag></tag>Text</div>儿童节点Text,<tag></tag>和Text.但事实并非如此.
如果要检测文本节点子节点,请检查nodeType是否为TEXT_NODE,而不是tagName是否为空字符串:
var flag = Array.from(item.childNodes).some(child => child.nodeType === child.TEXT_NODE);
Run Code Online (Sandbox Code Playgroud)