JavaScript之模仿添加留言
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> .wrapper { padding: 0; /*the beginning 开始网页自带16pxmargin*/ margin: 0; width: 300px; /*父级一开始宽度300px*/ list-style: none; /*清除格式前面的圆点*/ display: flex; /*使子元素横向排列*/ justify-content: space-around; /*flex下带属性 使子元素平均间距*/ /*每个项目两侧的间隔相等*/ }; li { font-weight: bold; /*字体加粗*/ height: 10px;/*li 高 10px*/ line-height: 10px;/*行高 跟li一样*/ padding: 15px;/*就像电脑屏幕一样 包裹元素的厚度*/ }; </style> </head> <body> <div id="di"> <textarea name="" id="" cols="30" rows="10"></textarea> <button onclick="sumt()">发布</button> <ul> </ul> </div> </body> </html> <script> function sumt() {
//获取文本域的DOM对象 let textar=document.querySelector('textarea');
//创建需要添加的元素对象 let txt=document.createElement('li');
//获取需要添加到那个父级元素中去,获取父级元素DOM对象 let ul=document.querySelector('ul'); if (textar.value.trim().length<1) { return false; }
//给创建的li元素赋值 txt.innerText=textar.value+"<button type='button' class='asa'>删除</a>"
;
//追加到父级元素的末尾 ul.appendChild(txt); textar.value='';
//获取所有的类
let but=document.querySelectorAll('.asa');
//循环添加点击事件
for (let i = 0; i < but.length; i++) {
but[i].onclick=function()
{
ul.removeChild(this.parentNode);
}
}
}
</script>