js获取html页面节点方法(递归方式)


Posted in Javascript onDecember 13, 2013

很久没有操作过递归调用了。看完之后,蓦然惊醒啊!

<!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>统计Element节点</title>
   <script language="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;
    if(node.nodeType==1) //1代表节点的类型为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('标记总数'+countTotalElement(document)+'\r\n 全部标记如下:\r\n'+elementName);">开始测试</a>
</body>
</html>

其实,通过递归调用也可以实现 想百度蜘蛛爬虫一样的效果!这个值得一试,或许可以通过这个方法,写一个sitemap生成器!

Javascript 相关文章推荐
Windows Live的@live.com域名注册漏洞 利用代码
Dec 27 Javascript
jQuery的学习步骤
Feb 23 Javascript
判断用户是否在线的代码
Mar 05 Javascript
js 操作select和option常用代码整理
Dec 13 Javascript
JS生成随机字符串的多种方法
Jun 10 Javascript
JS实现先显示大图后自动收起显示小图的广告代码
Sep 04 Javascript
Jquery日历插件制作简单日历
Oct 28 Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
Apr 06 Javascript
微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(二)
May 11 Javascript
Bootstrap Paginator+PageHelper实现分页效果
Dec 29 Javascript
javascript自定义日期比较函数用法示例
Jul 22 Javascript
小程序api实现promise封装过程解析
Nov 21 Javascript
jquery 合并内容相同的单元格(示例代码)
Dec 13 #Javascript
javascript读取xml实现javascript分页
Dec 13 #Javascript
同域jQuery(跨)iframe操作DOM(示例代码)
Dec 13 #Javascript
javascript分页代码实例分享(js分页)
Dec 13 #Javascript
jquery 操作iframe的几种方法总结
Dec 13 #Javascript
异步动态加载JS并运行(示例代码)
Dec 13 #Javascript
JQuery中$.ajax()方法参数详解及应用
Dec 12 #Javascript
You might like
黑夜路人出的几道php笔试题
2009/08/04 PHP
PHP5中新增stdClass 内部保留类
2011/06/13 PHP
PHP IE中下载附件问题解决方法
2014/01/07 PHP
mantis安装、配置和使用中的问题小结
2014/07/14 PHP
javaScript 数值型和字符串型之间的转换
2009/07/25 Javascript
让JavaScript的Alert弹出框失效的方法禁止弹出警告框
2014/09/03 Javascript
javascript跨域总结之window.name实现的跨域数据传输
2015/11/01 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
2016/08/04 Javascript
js 获取当前web应用的上下文路径实现方法
2016/08/19 Javascript
更靠谱的H5横竖屏检测方法(js代码)
2016/09/13 Javascript
js正则表达式注册页面表单验证
2016/10/11 Javascript
JS高级运动实例分析
2016/12/20 Javascript
JavaScript数据类型和变量_动力节点Java学院整理
2017/06/26 Javascript
详解NODEJS基于FFMPEG视频推流测试
2017/11/17 NodeJs
详解javascript中的babel到底是什么
2018/06/21 Javascript
vue-router为激活的路由设置样式操作
2020/07/18 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
vue 使用原生组件上传图片的实例
2020/09/08 Javascript
从零开始用webpack构建一个vue3.0项目工程的实现
2020/09/24 Javascript
python判断字符串编码的简单实现方法(使用chardet)
2016/07/01 Python
python实现汽车管理系统
2018/11/30 Python
python3 BeautifulSoup模块使用字典的方法抓取a标签内的数据示例
2019/11/28 Python
STAUD官方网站:洛杉矶独有的闲适风格
2019/04/11 全球购物
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
自荐信模版
2013/10/24 职场文书
业务主管岗位职责范本
2013/12/25 职场文书
《秋姑娘的信》教学反思
2014/02/28 职场文书
车辆转让协议书
2014/04/15 职场文书
学校运动会广播稿100条
2014/09/14 职场文书
工资收入证明样本(5篇)
2014/09/16 职场文书
2014年教学工作总结
2014/11/13 职场文书
请客吃饭开场白
2015/06/01 职场文书
白银帝国观后感
2015/06/17 职场文书
小学体育教学随笔
2015/08/14 职场文书
2016年十一促销广告语
2016/01/28 职场文书
漫画「请问您今天要来点兔子吗?」最新杂志彩页公开
2022/03/24 日漫