<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>1.ToList留言板</title>
<style>
*{margin: 0;padding: 0;}
div{
width: 200px;height: 200px;
background: lightblue;
}
</style>
</head>
<body>
<!--
重点:↓
1.文档节点:document
2.元素节点:Element
3.文本节点:Text
4.需要牢记的属性:
children = 子元素;childNode = 子节点;
childElementCount = 计算子元素的数量;
keyCode = 键盘码;firstElementChild = 第一个子元素
5.需要牢记的方法:
querySelector('标签名称') = 查找选择器;
document.getElementsByTagName() = 通过标签名获取元素;
appendChild() = 添加子元素;insertBefore() = 插入最前;
focus() = 获取焦点; removeChild() = 移除子元素;
document.createElem() = 创建元素;
-->
<h3>请写下你的留言:</h3>
<input type="text" style="width:196px;height:30px;">
<div>
<ul></ul>
</div>
</body>
</html>
<script>
// 第一步:获取input标签和ul标签并给input设置焦点
var comment = document.querySelector('input');
var ul = document.getElementsByTagName('ul')[0];
comment.focus(); // 给input设置焦点
// 第二步:当input输入值并按下回车键后创建li标签并将input的值添加到li里面
comment.onkeydown = function(e){
//console.log(e.keyCode);
if(e.keyCode === 13){
var li = document.createElement('li');
li.innerHTML = comment.value + '<a href="javascript:;" onclick="del(this)">'+'删除'+'</a>';
//console.log(li);
// 第三步:判断ul下面是否有子元素 有就新增到现有的第一个子元素前面,没有就直接新增
if(ul.childElementCount === 0){
ul.appendChild(li);
}else{
var first = ul.firstElementChild;
console.log(first);
ul.insertBefore(li,first);
}
// 按下回车后清空input的值,并重新获取焦点
comment.value = '';
comment.focus();
}
}
// 第四步:留言删除
function del(ele){
if(confirm('确定要删除吗?')){
var li = ele.parentNode;
li.parentNode.removeChild(li);
}
}
</script>点击 "运行实例" 按钮查看在线实例

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号