【黑马程序员济南】 前端与移动开发就业班笔记DOM讲解:Day04
/**
*@author 传智播客
*/
var content = document.getElementById("content");
var tip = document.getElementById("cc");//纸条
for (var i = 0; i < 10; i++) {
var cloneTip = tip.cloneNode(true);//克隆出来的节点
cloneTip.id = "cc" + i;
content.appendChild(cloneTip);//将克隆出来的纸条添加到内容区域
}
/**
*@author 传智播客
*/
for (var i = 0; i < 10; i++) {
var cloneTip = tip.cloneNode(true);//克隆出来的节点
cloneTip.id = "cc" + i;
content.appendChild(cloneTip);
//设置位置
//400-800 [0,1) * 400 [0,400) + 400 [400,800)
var x = parseInt(Math.random() * 400 + 400);
//0-400 [0,1) * 400 [0,400)
var y = parseInt(Math.random() * 400);
//控制cloneTip的样式
cloneTip.style.left = x + "px";
cloneTip.style.top = y + "px";
//层级
cloneTip.onclick = function () {
zIndex++;
this.style.zIndex = zIndex;
};
}
/**
*@author 传智播客
*/
//双击头部关闭纸条
//firstElementChild 第一个子元素
var header = cloneTip.firstElementChild;
header.ondblclick = function () {
//this.parentNode.style.display = "none";
content.removeChild(this.parentNode);
};
/*
*@author 传智播客
*/
//获取第一个子元素的兼容函数
function getFirstElement(element) {
if (element.firstElementChild) {//判断element有无firstElementChild属性
return element.firstElementChild;
} else {
var node = element.firstChild;//第一个子节点
while (node && node.nodeType !== 1) {//当节点是元素节点时
node = node.nextSibling;
}
return node;
}
}
<script>
/**
*@author 传智播客
*/
var btn = document.getElementById("btn");
var box = document.getElementById("box");
btn.onclick = function () {
var start = +new Date();
for (var i = 0; i < 1000; i++) {
box.innerHTML += "<ul><li>111</li></ul>";
}
var end = +new Date();
console.log(end - start);
};
</script>
/**
*@author 传智播客
*/
var btn = document.getElementById("btn");
var box = document.getElementById("box");
btn.onclick = function () {
var start = +new Date();
var arr = [];
for (var i = 0; i < 1000; i++) {
arr.push("<ul><li>111</li></ul>");
//1拼接字符串
}
box.innerHTML = arr.join("");
//2把字符串变成DOM对象
//3把DOM对象挂在DOM树上
//4还要渲染
var end = +new Date();
console.log(end - start);
};
</script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>传智播客</title>
<style>
.cls {
list-style: none;
width: 150px;
margin: 0;
padding: 0;
background-color: yellowgreen;
text-align: center;
}
</style>
</head>
<body>
<input type="button" id="btn" value="创建"/>
<div id="box"></div>
</body>
</html>
/**
*@author 传智播客
*/
var phones = ["小米", "华为", "中兴", "苹果", "三星", "魅族"];
var btn = document.getElementById("btn");
var box = document.getElementById("box");
btn.onclick = function () {
//一进来先检测 如果页面上已经有了 就返回 没有才追加
var ul = document.getElementById("u");
//如果有 是对象 如果没有 是null
if (ul) {
//如果能进来说明有了 就不再重复创建了
return;
}
ul = document.createElement("ul");
ul.id = "u";
ul.className = "cls";
box.appendChild(ul);
//创建li并追加到ul中
for (var i = 0; i < phones.length; i++) {
var phone = phones;//每个品牌
var li = document.createElement("li");
li.innerHTML = phone;
ul.appendChild(li);
}
};
152.43 KB, 下载次数: 89
3.95 KB, 下载次数: 110
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |