js检查页面上有无重复id的实现代码


Posted in Javascript onJuly 17, 2013

方法一:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
  <TITLE> New Document </TITLE>
  <script type="text/javascript">
    window.onload = function(){
        var tags = document.getElementsByTagName("*"),
            count = tags.length, time, ret = {}, id;
        time = new Date();
        for(var i = 0; i < count; i++){
            id = tags[i].id;
            if(id){
                if(ret[id]){
                    alert(id + "/n用时:" + (new Date() - time));
                    return;
                }else{
                    ret[id] = true;
                }
            }
        }
        alert("未找到相同ID");
    }
  </script>
</HEAD>
<BODY>
  <script type="text/javascript">
    (function(){
        var html = [], rnd = parseInt(Math.random() * 1000);
        for(var i = 0; i < 1000; i++){
            html.push("<div id='a" + i + "'>" + i + "</div>");
        };
        //在随机位置插入一个随机的id
        i = parseInt(Math.random() * 1000);
        html[i] = html[i] + ("<div id='a" + rnd + "'>" + rnd + "</div>");
        document.write(html.join(""));
    })();
  </script>
</BODY>
</HTML>

方法二:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
  <TITLE> New Document </TITLE>
  <script type="text/javascript">
    function createDiv(){
        var html = [], id;
        for(var i = 0; i < 2000; i++){
            id = "divId" + parseInt(Math.random() * 10000);
            html.push("<div id='" + id + "'>" + id + "</div>");
        }
        document.body.innerHTML = html.join("");
    }
    window.onload = function(){
        createDiv();        var oID = {} , result = {}, arr = [],
            tags = document.getElementsByTagName("*");
        for(var i = 0, id; i < tags.length; i++){
            id = tags[i].id;
            if(id){
                oID[id] = oID[id] ? oID[id] + 1 : 1;
                if(oID[id] > 1){
                    result[id] = id + " " + oID[id]; } } } for(var o in result){
            arr.push(result[o]);
        }
        alert(arr.join("/t"));
    };
  </script>
</HEAD>
<BODY>
</BODY>
</HTML>
Javascript 相关文章推荐
优秀js开源框架-jQuery使用手册(1)
Mar 10 Javascript
基于jQuery的固定表格头部的代码(IE6,7,8测试通过)
May 18 Javascript
原生js 秒表实现代码
Jul 24 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
Feb 25 Javascript
javascript RegExp 使用说明
May 21 Javascript
Bootstrap前端开发案例一
Jun 17 Javascript
基于jQuery实现表格的查看修改删除
Aug 01 Javascript
javascript学习笔记_浅谈基础语法,类型,变量
Sep 19 Javascript
Angular2 Service实现简单音乐播放器服务
Feb 24 Javascript
jQuery EasyUI Accordion可伸缩面板组件使用详解
Feb 28 Javascript
mui框架移动开发初体验详解
Oct 11 Javascript
Vim快速合并行及vim 将文件所有行合并到一行
Nov 27 Javascript
基于pthread_create,readlink,getpid等函数的学习与总结
Jul 17 #Javascript
jcrop基本参数一览
Jul 16 #Javascript
jQuery实现鼠标滑过遮罩并高亮显示效果
Jul 16 #Javascript
jquery特效 幻灯片效果示例代码
Jul 16 #Javascript
jQuery .attr()和.removeAttr()方法操作元素属性示例
Jul 16 #Javascript
js判断屏幕分辨率的代码
Jul 16 #Javascript
js 调用父窗口的具体实现代码
Jul 15 #Javascript
You might like
php 无法加载mcrypt.dll的解决办法
2013/04/03 PHP
PHP面向对象详解(三)
2015/12/07 PHP
如何解决PHP使用mysql_query查询超大结果集超内存问题
2016/03/14 PHP
PHP数据库操作二:memcache用法分析
2017/08/16 PHP
PHP hebrev()函数用法讲解
2019/02/21 PHP
Laravel框架下载,安装及路由操作图文详解
2019/12/04 PHP
关于javascript 回调函数中变量作用域的讨论
2009/09/11 Javascript
jquery zTree异步加载简单实例分享
2013/02/05 Javascript
extjs ColumnChart设置不同的颜色实现代码
2013/05/17 Javascript
jquery得到font-size属性值实现代码
2013/09/30 Javascript
调试JavaScript中正则表达式中遇到的问题
2015/01/27 Javascript
jQuery插件slider实现拖动滑块选取价格范围
2015/04/30 Javascript
jQuery中用on绑定事件时需注意的事项
2017/03/19 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
2017/03/29 Javascript
nodejs爬虫遇到的乱码问题汇总
2017/04/07 NodeJs
Vue实现点击后文字变色切换方法
2018/02/11 Javascript
Nodejs实现用户注册功能
2019/04/14 NodeJs
JavaScrip如果基于url实现图片下载
2020/07/03 Javascript
tensorflow 使用flags定义命令行参数的方法
2018/04/23 Python
python 3.7.0 安装配置方法图文教程
2018/08/27 Python
pandas.read_csv参数详解(小结)
2019/06/21 Python
Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)
2020/12/14 Python
PatPat德国:妈妈的每日优惠
2019/10/02 全球购物
致100米运动员广播稿
2014/02/14 职场文书
优秀党务工作者事迹材料
2014/05/07 职场文书
党员承诺书格式
2014/05/21 职场文书
我们的节日中秋活动方案
2014/08/19 职场文书
纪念九一八事变演讲稿:牢记历史,捍卫主权
2014/09/14 职场文书
官僚主义现象查摆问题整改措施
2014/10/04 职场文书
2014年控辍保学工作总结
2014/12/08 职场文书
个人年终总结怎么写
2015/03/09 职场文书
利用javaScript处理常用事件详解
2021/04/14 Javascript
如何设计高效合理的MySQL查询语句
2021/05/26 MySQL
python开发飞机大战游戏
2021/07/15 Python
MySQL中B树索引和B+树索引的区别详解
2022/03/03 MySQL
PyCharm 配置SSH和SFTP连接远程服务器
2022/05/11 Python