Blogger Information
Blog 47
fans 3
comment 0
visits 38272
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
事件代理、留言板、字符串练习
Original
608 people have browsed it

1. 事件代理的实现机制

事件代理:也叫事件委托,事件触发者通常是事件绑定者的子元素

  1. <ul>
  2. <li>item1</li>
  3. <li>item2</li>
  4. <li>item3</li>
  5. <li>item4</li>
  6. <li>item5</li>
  7. </ul>
  8. <script>
  9. const lis = document.querySelectorAll("li");
  10. document.querySelector("ul").addEventListener("click", (ev) => {
  11. // 事件绑定者
  12. console.log(ev.currentTarget);
  13. // 事件触发者
  14. console.log(ev.target.innerHTML);
  15. });
  16. </script>

2. 完成留言板,添加删除功能

删除前:

删除后:

  1. <label><input type="text" name="message" /></label>
  2. <ol id="list"></ol>
  3. <script>
  4. // 获取元素
  5. const msg = document.querySelector("input");
  6. const list = document.querySelector("#list");
  7. msg.onkeydown = (ev) => {
  8. // 键盘事件中,key表示按下的键名
  9. if (ev.key === "Enter") {
  10. // 非空判断
  11. if (ev.currentTarget.value.length === 0) {
  12. alert("留言内容不能为空");
  13. } else {
  14. // 将留言内容添加到列表中
  15. // 创建留言
  16. let str = `<li>${ev.currentTarget.value} <button onclick="this.parentElement.remove();">删除</button></li>`;
  17. // 应该讲最新的信息永远放在第一条
  18. list.insertAdjacentHTML("afterbegin", str);
  19. // 清空上一条留言
  20. ev.currentTarget.value = null;
  21. }
  22. }
  23. };
  24. </script>

3. 10 个字符串方法

  1. <script>
  2. // 1. concat()拼接
  3. let str = "html".concat(" css", " php ");
  4. console.log(str);
  5. // 2. slice(start,end):取子串
  6. str = "hello php.cn";
  7. let res = str.slice(5, 9);
  8. console.log(res);
  9. // 正方向从0开始,反方向从-1开始
  10. // 3. substr(start,length)
  11. res = str.substr(0, 5);
  12. console.log(res);
  13. // 4. trim();删除二端空格
  14. let psw = " rr888 ";
  15. console.log(psw.trim().length);
  16. // 5. 将字符串打成数组
  17. res = "admin@php.cn".split("@");
  18. console.log(res);
  19. // 6. 把字符串转为小写
  20. res = "ABCDEFG".toLowerCase();
  21. console.log(res);
  22. // 7. 返回字符串指定字符第一次出现的位置
  23. let ino = str.indexOf("c");
  24. console.log(ino);
  25. // 8. repeat() 重复次数字符串
  26. str = str.repeat(2);
  27. console.log(str);
  28. // 9.lastIndexOf() 子串最后一次出现位置
  29. let lpos = str.lastIndexOf("c");
  30. console.log(lpos);
  31. // 10.search() 搜索子串
  32. console.log(str.search("c"));
  33. </script>
Correcting teacher:天蓬老师天蓬老师

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