Blogger Information
Blog 15
fans 1
comment 1
visits 174138
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
七情论坛留言板!
想做肥仔
Original
862 people have browsed it

HTML代码展示

  1. <!-- 留言板-头部 -->
  2. <div class="message_top">
  3. <div class="txt">
  4. <h3>七情论坛</h3>
  5. </div>
  6. </div>
  7. <!-- 留言板-内容区 -->
  8. <div class="message_nav">
  9. <p style="text-align: center">留言板块</p>
  10. <svg class="icon" aria-hidden="true">
  11. <use xlink:href="#icon-liuyanmoban"></use>
  12. </svg>
  13. <div class="nav_box">
  14. <div class="nav_box_in">
  15. <!-- onkeydown 当输入内容时,就能知道输入的内容 -->
  16. <input
  17. type="text"
  18. placeholder="请输入您的内容"
  19. onkeydown="addMsg(this)"
  20. autofocus
  21. />
  22. <ol class="list"></ol>
  23. </div>
  24. </div>
  25. </div>
  26. <!-- 留言板-分页组 -->
  27. <div class="message_next_page"></div>

CSS 代码

  1. <style>
  2. * {
  3. margin: 0;
  4. padding: 0;
  5. }
  6. /* 头部 */
  7. .message_top {
  8. width: 100vw;
  9. height: 60px;
  10. background-color: aquamarine;
  11. }
  12. .message_top .txt {
  13. width: 200px;
  14. height: 60px;
  15. margin: auto;
  16. }
  17. .message_top .txt h3 {
  18. font-size: larger;
  19. color: blue;
  20. text-align: center;
  21. line-height: 58px;
  22. }
  23. /* 内容区 */
  24. .message_nav {
  25. width: 100vw;
  26. height: 40rem;
  27. background-color: azure;
  28. display: grid;
  29. place-content: center;
  30. }
  31. .message_nav .icon {
  32. width: 1em;
  33. height: 1em;
  34. vertical-align: -0.15em;
  35. fill: currentColor;
  36. overflow: hidden;
  37. font-size: 36px;
  38. margin: auto;
  39. }
  40. .message_nav .nav_box {
  41. width: 1200px;
  42. height: 470px;
  43. border: 3px solid;
  44. border-radius: 25px;
  45. }
  46. .message_nav .nav_box .nav_box_in {
  47. width: 300px;
  48. height: 100px;
  49. margin: auto;
  50. }
  51. /* 留言内容 */
  52. .message_nav .nav_box .nav_box_in .list li {
  53. padding: 5px 0;
  54. }
  55. /* 删除按钮 */
  56. .message_nav .nav_box .nav_box_in .list button {
  57. padding: 0 8px;
  58. margin-left: 10px;
  59. background-color: brown;
  60. border-radius: 100%;
  61. color: aliceblue;
  62. }
  63. .message_nav .nav_box input {
  64. width: 200px;
  65. height: 50px;
  66. border-radius: 25px;
  67. border: 2px solid orange;
  68. padding-left: 15px;
  69. text-align: center;
  70. outline: none;
  71. display: block;
  72. margin-left: auto;
  73. margin-right: auto;
  74. margin-top: 25px;
  75. }
  76. /* focus 输入框 输入时触发事件 */
  77. .message_nav .nav_box input:focus {
  78. border-style: solid;
  79. border-color: #03a9f4;
  80. box-shadow: 0 0 15px #03a9f4;
  81. }
  82. /* 分页区 */
  83. .message_next_page {
  84. width: 100vw;
  85. height: 180px;
  86. background-color: blanchedalmond;
  87. }
  88. </style>

JS代码部分

  1. <script>
  2. function addMsg(contents) {
  3. // 事件对象 event 键盘事件 其中的 key 属性会接收输入的内容
  4. // 当输入回车键时 就会得到Enter 这里是判断接收回车键
  5. if (event.key === 'Enter') {
  6. // 1获取表单显示内容的容器
  7. const ol = document.querySelector('.list');
  8. // 2判断表单内容是否为空 trim()方法 清除空格 就算用户输入空格也不行!
  9. if (contents.value.trim().length === 0) {
  10. alert('留言不呢为空!');
  11. // 焦点重置,把鼠标放到输入框当中 focus()
  12. contents.focus();
  13. return false;
  14. }
  15. // 3添加一条新留言
  16. const li = document.createElement('li');
  17. // 给li 添加内容 内容就是输入框里 用户输入的文本
  18. li.textContent = contents.value;
  19. // 给添加的内容添加删除功能 parentNode父节点
  20. li.innerHTML =
  21. contents.value +
  22. '<button onclick="del(this.parentNode)">删除</button>';
  23. // 直接在ul标签的终止点之后插入内容 insertAdjacentElement
  24. ol.insertAdjacentElement('afterBegin', li);
  25. // 4将输入框的上一条留言更新到内容区
  26. contents.value = null;
  27. // 5焦点充值
  28. contents.focus();
  29. }
  30. }
  31. function del(contents) {
  32. // 弹窗删除功能 confirm() 三元表达式
  33. return confirm('是否删除') ? contents.remove() : false;
  34. }
  35. </script>

效果示例

图片展示

动态效果图示例

动态

Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:效果不错
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post