案例分析:
    (1)当我们把文本域里面的值赋值给li的时候,多添加一个删除的链接。
    (2)需要把所有的链接获取过来,当我们点击当前的链接的时候,删除当前链接所在的li。
    (3)阻止链接跳转需要添加javascript:void(0);或者javascript:;

    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title></title>
    6. </head>
    7. <body>
    8. <textarea></textarea>
    9. <button>发布</button>
    10. <ul></ul>
    11. </body>
    12. <script>
    13. //获取元素
    14. var btn = document.querySelector("button");
    15. var text = document.querySelector("textarea");
    16. var ul = document.querySelector("ul");
    17. //注册事件(鼠标点击事件)
    18. btn.onclick = function() {
    19. //先判断一下
    20. if(text.value == "") {
    21. alert("您没有输入内容");
    22. return false;
    23. } else {
    24. //创建节点元素
    25. var li = document.createElement("li");
    26. //将文本域中输入的内容赋值给节点,并且多添加一个删除的链接
    27. li.innerHTML = text.value + "<a href = 'javascript:;'>删除</a>";
    28. //添加节点元素(每次鼠标一点击,就往里面添加一个节点)
    29. ul.insertBefore(li, ul.children[0]); //把节点添加到最前面(最新留言)
    30. //删除元素,删除的是当前链接的li 链接的父亲
    31. var as = document.querySelectorAll("a");
    32. for(var i = 0; i < as.length; i++) {
    33. as[i].onclick = function() {
    34. //注意,删除的是链接a 的父亲li
    35. ul.removeChild(this.parentNode);//这里的this指的就是as[i]
    36. }
    37. }
    38. }
    39. }
    40. </script>
    41. </html>