javascript如何統計頁面中標籤的數量
本章節介紹一下如何統計頁面中標籤的數量,當然標籤是可以重複的,雖然不常用,不過寄希望能夠給大家帶來或多或少的幫助。
程式碼如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script type="text/javascript"> var elementName=""; function countTotalElement(node){ ///Attribute nodeType值為2,表示節點屬性 ///Comment nodeType值為8,表示註釋文字 ///Document nodeType值為9,表示Document ///DocumentFragment nodeType值為11,表示Document片段 ///Element nodeType值為1,表示元素節點 ///Text nodeType值為3,表示文字節點 var total=0; //1代表節點的型別為Element if(node.nodeType==1){ 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; } window.onload=function(){ var bt=document.getElementById("bt"); bt.onclick=function(){ alert('標籤總數'+countTotalElement(document)+'\r\n 全部標籤如下:\r\n'+elementName); } } </script> </head> <body> <a href="javascript:void(0);return false" id="bt">點選測試</a> </body> </html>
以上程式碼實現了我們的要求,點選按鈕可以彈出框,能夠統計頁面中標籤的數量。程式碼比較簡單,就是通過判斷節點型別,如果是元素節點就計算在內,並且結合for迴圈通過遞迴的方式實現數量統計。
一.程式碼註釋:
1.var elementName="",宣告一個變數,用來儲存標籤的名稱,並且通過字串連線將結果串聯起來。
2.function countTotalElement(node){},此函式是功能的核心,引數是個節點物件,在本程式碼中是document節點物件。
3.var total=0,宣告一個變數並初始化為0,用來儲存標籤的數量。
4.if(node.nodeType==1),判斷是否是元素節點。
5.total++,加1運算。
6.elementName=elementName+node.tagName+"\r\n",標籤名稱連線起來,後面的回車換行。
7.var childrens=node.childNodes,獲取node節點的所有一級子節點。
8.for(var i=0;i<childrens.length;i++),遍歷每一個一級子節點。
9.total+=countTotalElement(childrens);,這裡運用了遞迴的方式實現深度遍歷,也就是首先判斷一個節點,然後再去遍歷判斷它的子節點,依次類推。
10.return total,返回數量。
二.相關閱讀:
1.nodeType屬性可以參閱javascript nodeType一章節。
2.tagName屬性可以參閱javascript tagName一章節。
3.childNodes屬性可以參閱js childNodes一章節。
相關文章
- JavaScript 模板字面量標籤JavaScript
- pbootcms呼叫搜尋頁keyword值數量和標籤頁tag值和數量boot
- PbootCMS呼叫搜尋頁和標籤頁的關鍵詞及數量boot
- JavaScript 獲取div在頁面中座標JavaScript
- javascript頁面元素座標JavaScript
- JavaScript 倒數計時關閉頁面JavaScript
- javascript快速入門6--Script標籤與訪問HTML頁面JavaScriptHTML
- javascript獲取滑鼠指標在整個頁面中的座標位置JavaScript指標
- elementplus中標籤頁操作
- 微信小程式頁面功能-----標籤切換微信小程式
- Pyqt5 實現多標籤頁面QT
- javascript刪除字串中的html標籤JavaScript字串HTML
- 如何在jsp頁面使用JSTL標籤和fn函式JS函式
- JavaScript物件導向修改標籤頁詳解JavaScript物件
- TopThink頁面頭部存在多餘 li 標籤
- JavaScript如何獲取元素的標籤型別JavaScript型別
- Struts疑問:頁面不用html:form等標籤,formbean如何取資料HTMLORMBean
- 求助:如何中斷jsf中多個自定義標籤中的其他標籤JS
- JavaScript-滑鼠獲取頁面座標JavaScript
- JavaScript物件導向怎樣刪除標籤頁?JavaScript物件
- JavaScript <script>標籤JavaScript
- 基於 Stack Overflow 標籤數量變化的程式設計趨勢程式設計
- SAP WebClient UI頁面標籤的決定邏輯介紹WebclientUI
- Iframe內部頁面高度賦值於其父頁面的Iframe標籤賦值
- 自動為新文章新增標籤WordPress外掛(可控制標籤數量)
- 說說如何在 Vue.js 中實現標籤頁元件Vue.js元件
- 標籤評分:海量標籤如何進行系統治理?
- Jx.Cms開發筆記(五)-文章編輯頁面標籤設計筆記
- 在Linux中,如何統計ip訪問情況?分析 nginx 訪問日誌?如何找出訪問頁面數量在前十位的ip?LinuxNginx
- HTML表單標籤詳解:如何用HTML標籤打造互動網頁?HTML網頁
- 在前端頁面中使用Markdown並且優化a標籤前端優化
- 頁面動態加入<script>標籤並執行程式碼行程
- 移動終端H5頁面meta標籤的設定H5
- [提問交流]請問模版標籤如何傳統變數?變數
- 淺析Bootstrap中Tab(標籤頁)的使用方法boot
- JavaScript 標籤語句JavaScript
- JavaScript各類標籤的使用JavaScript
- ASP.NET母版頁使用 按下回車重新整理頁面 去掉 標籤ASP.NET