js獲取html頁面節(jié)點(diǎn)方法(遞歸方式)
很久沒有操作過遞歸調(diào)用了。看完之后,驀然驚醒啊!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>統(tǒng)計(jì)Element節(jié)點(diǎn)</title>
<script language="javascript">
var elementName="";
function countTotalElement(node)
{
///Attribute nodeType值為2,表示節(jié)點(diǎn)屬性
///Comment nodeType值為8,表示注釋文本
///Document nodeType值為9,表示Document
///DocumentFragment nodeType值為11,表示Document片段
///Element nodeType值為1,表示元素節(jié)點(diǎn)
///Text nodeType值為3,表示文本節(jié)點(diǎn)
var total=0;
if(node.nodeType==1) //1代表節(jié)點(diǎn)的類型為Element
{
total++;
elementName=elementName+node.tagName+"\r\n";
}
var childrens=node.childNodes;
for(var i=0;i<childrens.length;i++)
{
total+=countTotalElement(childrens[i]);
}
return total;
}
</script>
</head>
<body>
<h1>測試</h1>
<table width="100" border="2" cellpadding="0" cellspacing="0">
<tr><td>
<form name="form1" action="" method="post">
<input type="text" name="ipput1" value="測試"><br />
<input type="password" name="password" value="">
</form>
</td></tr>
</table>
<a href="javascript:void(0)" onClick="alert('標(biāo)記總數(shù)'+countTotalElement(document)+'\r\n 全部標(biāo)記如下:\r\n'+elementName);">開始測試</a>
</body>
</html>
其實(shí),通過遞歸調(diào)用也可以實(shí)現(xiàn) 想百度蜘蛛爬蟲一樣的效果!這個(gè)值得一試,或許可以通過這個(gè)方法,寫一個(gè)sitemap生成器!
- Vue.js 遞歸組件實(shí)現(xiàn)樹形菜單(實(shí)例分享)
- vue.js學(xué)習(xí)之遞歸組件
- JS中遞歸函數(shù)
- JS遍歷數(shù)組和對象的區(qū)別及遞歸遍歷對象、數(shù)組、屬性的方法詳解
- JavaScript采用遞歸算法計(jì)算階乘實(shí)例
- 一個(gè)JavaScript遞歸實(shí)現(xiàn)反轉(zhuǎn)數(shù)組字符串的實(shí)例
- JavaScript的遞歸之遞歸與循環(huán)示例介紹
- 深入Javascript函數(shù)、遞歸與閉包(執(zhí)行環(huán)境、變量對象與作用域鏈)使用詳解
- js中遞歸函數(shù)的使用介紹
- javascript中遞歸的兩種寫法
相關(guān)文章
JS判斷數(shù)組是否包含某元素實(shí)現(xiàn)方法匯總
這篇文章主要介紹了JS判斷數(shù)組是否包含某元素實(shí)現(xiàn)方法匯總,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06javascript的函數(shù)、創(chuàng)建對象、封裝、屬性和方法、繼承
從一開始接觸到j(luò)s就感覺好靈活,每個(gè)人的寫法都不一樣,比如一個(gè)function就有N種寫法2011-03-03JS實(shí)現(xiàn)在網(wǎng)頁中彈出一個(gè)輸入框的方法
這篇文章主要介紹了JS實(shí)現(xiàn)在網(wǎng)頁中彈出一個(gè)輸入框的方法,實(shí)例分析了prompt的用法,可用來設(shè)置密碼,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03Firefox中autocomplete="off" 設(shè)置不起作用Bug的解決方法
在實(shí)現(xiàn)補(bǔ)全提示功能時(shí)(Suggest),都會給輸入框(Input)元素添加autocomplete屬性,且值設(shè)為off。2011-03-03js創(chuàng)建表單元素并使用submit進(jìn)行提交
這篇文章主要介紹了js創(chuàng)建表單元素并使用submit進(jìn)行提交,需要的朋友可以參考下2014-08-08BootStrap Table后臺分頁時(shí)前臺刪除最后一頁所有數(shù)據(jù)refresh刷新后無數(shù)據(jù)問題
這篇文章主要介紹了BootStrap Table后臺分頁時(shí)前臺刪除最后一頁所有數(shù)據(jù)refresh刷新后無數(shù)據(jù)問題,需要的朋友可以參考下2016-12-12