ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript ノードトラバーサル関数_JavaScript スキル

JavaScript ノードトラバーサル関数_JavaScript スキル

WBOY
WBOYオリジナル
2016-05-16 18:31:051161ブラウズ

Firefox 公式 Web サイトにある一連の関数。treeWalker に相当します。これを使用すると、Traversal API 2 のすべての関数 (nextElementSibling、previousElementSibling、firstElementChild、lastElementChild、children) を簡単に実装できます。これらの関数を使用すると、次の兄弟を見つけることができます。 、指定されたノード (要素) の以前の兄弟、最初の子、および最後の子をユニークにしているのは、空白ノードを安全に無視するため、毎回探している実際のノードを取得できることです。 🎜>

コードをコピーします コードは次のとおりです:function is_all_ws(nod) { return !(/[^tnr ]/. test(nod.data) ); }
関数 is_ignorable(nod) { return (nod.nodeType == 3) && is_all_ws(nod)); node_before(sib) {
while ((sib = sib.previousSibling)) {
if (!is_ignorable(sib)) return
}
return
}
function node_after(sib) {
while ((sib = sib.nextSibling)) {
if (!is_ignorable(sib)) return
}
return
}
function first_child(par) {
var res = par.firstChild;
while(res) {
if(!is_ignorable(res)) return res; >}
return null;
}
function last_child(par) {
var res = par.lastChild;
if(!is_ignorable(res))戻り値;
res = res.previousSibling;

}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。