js检查页面上有无重复id的实现代码
js检查页面上有无重复id的实现代码
发布时间:2016-12-30 来源:查字典编辑
摘要:方法一:复制代码代码如下:NewDocumentwindow.onload=function(){vartags=document.getE...

方法一:

复制代码 代码如下:

<!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教程学习
热门Javascript教程学习
编程开发子分类