Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 查看节点是否有具有特定标记的子节点的最快方法是什么?_Javascript_Html - Fatal编程技术网

Javascript 查看节点是否有具有特定标记的子节点的最快方法是什么?

Javascript 查看节点是否有具有特定标记的子节点的最快方法是什么?,javascript,html,Javascript,Html,我想检查一个节点本身是否有某个标记,或者在JavaScript中是否有一个子节点 <html> <body> <p> <h3><a> This link lead nowhere!</a> </h3> </p> </body> </html> 或 功能节点containstag(节点){ ret

我想检查一个节点本身是否有某个标记,或者在JavaScript中是否有一个子节点

<html>
     <body>
         <p>
             <h3><a> This link lead nowhere!</a> </h3>
         </p>
     </body>
</html>

功能节点containstag(节点){

return node.outerHTML.indexOf(“此函数运行速度更快

功能节点containstag(节点){
return node.tagName==“A”| | node.getElementsByTagName(“A”)。长度>0;

}
第一个代码段不起作用吗?最好使用它,而不是在第二个代码段中自己解析HTML。为什么不自己试试看~“第二个函数保证能起作用吗?”-它保证不起作用,因为它不区分
等元素。
function nodeContainsTag(node) {
    return node.tagName == "A" || node.getElementsByTagName("a").length > 0 ;
}
function nodeContainsTag(node) {
    return node.outerHTML.indexOf("<a") > 0;
}