javascript - How to use getElementsByTagName() to find all nested elements? -
javascript - How to use getElementsByTagName() to find all nested elements? -
i have next html:
<html> <head><title>title</title></head> <body> <div id='div2'> <a href='#'>1</a> <div id='div1'> <a href='#'>2</a> </div> </div> </body> </html>
... , next javascript code, i'm running through greasemonkey:
var nodes = document.body.getelementsbytagname('a'); (var = 0; < nodes.length; i++) { var node = nodes[i]; node.parentnode.removechild(node); }
i expect find , remove tags; instead finds first, not second. far can tell it's having difficulty way sec tag nested.
could please allow me know how remove tags, using getelementsbytagname? there reasons i'd prefer not utilize xpath if @ possible.
capture length , remove in reverse order. eliminate side effects.
var nodes = document.body.getelementsbytagname('a'); (var j=nodes.length-1; j >= 0; j--) //-- kill last, first, avoid orphan problems. { var node = nodes[j]; if (node) { node.parentnode.removechild (node); } }
but improve way... add together directive header:
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
then whole code becomes:
$("a").remove ();
javascript dom greasemonkey
Comments
Post a Comment