Blogger Information
Blog 18
fans 0
comment 0
visits 15960
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
事件代理、留言板和字符串函数
沉寂的博客
Original
542 people have browsed it

事件代理

事件传递
1.捕获:从最外层的元素逐级向内知道事件的绑定着
2.目标:到达事件目标
3.冒泡:从绑定着再有内到外逐级向上知道最外层的元素
主要学习冒泡,事件类型ev.type,事件绑定着 ev.currentTarget,事件触发者 ev.target事件传递路径 ev.path,阻止事件冒泡 ev.stopPropagation,事件代理也叫事件委托,遍历每个li并逐个为它添加点击事件。
代码如下:

  1. <ul>
  2. <li>item1</li>
  3. <li>item2</li>
  4. <li>item3</li>
  5. <li>item4</li>
  6. <li>item5</li>
  7. </ul>
  1. const Lis = document.querySelector("ul");
  2. Lis.addEventListener("click", (ev) => {
  3. // 事件绑定者
  4. console.log(ev.currentTarget);
  5. // 事件触发者,通常是事件绑定者的子元素
  6. console.log(ev.target.innerHTML);
  7. ev.target.style.background = "#aaa";
  8. });

留言板

代码如下:

  1. <body>
  2. <form>
  3. <h3>留言板:</h3>
  4. <textarea
  5. name="liuyan"
  6. id="liuyan"
  7. value="aaa"
  8. cols="30"
  9. rows="10"
  10. placeholder="请输入评论内容……"
  11. ></textarea>
  12. </form>
  13. <ol id="list"></ol>
  1. const msg = document.querySelector("textarea");
  2. const list = document.querySelector("#list");
  3. msg.onkeydown = (ev) => {
  4. // 检查触发条件
  5. if (ev.key === "Enter") {
  6. // 非空判断
  7. if (ev.currentTarget.value.length === 0) {
  8. alert("输入内容不能为空");
  9. } else {
  10. // console.log(ev.currentTarget.value);
  11. let htmlStr = `<li>${ev.currentTarget.value}
  12. <button onclick = del(this)>删除</button>
  13. </li>`;
  14. list.insertAdjacentHTML("afterBegin", htmlStr);
  15. ev.currentTarget.value = null;
  16. // msg.value = null;或者上边的语句
  17. }
  18. }
  19. };
  20. function del(element) {
  21. list.removeChild(element.parentNode);
  22. // confirm('确定要删除这条评论吗?') ? element.parentNode.outerHTML = null : false;
  23. // confirm("你确定删除留言吗?")
  24. // ? (element.parentNode.outerHTML = null)
  25. // : false;
  26. }

运行结果:
留言板

字符串函数

字符串函数,如下代码所示:

  1. <script>
  2. // concat();字符串拼装
  3. let str = " html ".concat("css", "php", 789);
  4. console.log(str);
  5. // slice(开始下标,结束下标)字符串截取
  6. let jq = "hello!";
  7. console.log(str.trim().slice(0, 3));
  8. console.log(str.substr(0, 3));
  9. // trim();删除两端的空格键
  10. console.log(str.trim());
  11. // 字符串打成数组split()
  12. console.log(str.split(""));
  13. // 字符串转大写
  14. console.log(str.trim().toUpperCase());
  15. // 字符串转小写
  16. console.log(str.trim().toLowerCase());
  17. // toLowcase()
  18. </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
Author's latest blog post