Javascript中事件对象的target和this的区别

 4222

Javascript事件对象target和this的区别


1、当触发对象与绑定对象一致时


  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7.     <title>Document</title>
  8. </head>
  9. <body>
  10.     <ul>
  11.         <li>item1</li>
  12.         <li>item2</li>
  13.         <li>item3</li>
  14.         <li>item4</li>
  15.         <li>item5</li>
  16.     </ul>
  17.     <script>
  18.         const li=document.querySelector("ul li:nth-of-type(4)");
  19.         console.log(li);
  20.  
  21.         li.addEventListener("click",function(e){
  22.             console.log(e.target);
  23.             console.log(this);
  24.         });
  25.     </script>
  26. </body> 
  27. </html>

点击item4这个li后,两者返回如下:

606fed98ca496.png


2、当触发对象与绑定对象不一致时


  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7.     <title>Document</title>
  8. </head>
  9. <body>
  10.     <ul>
  11.         <li>item1</li>
  12.         <li>item2</li>
  13.         <li>item3</li>
  14.         <li>item4</li>
  15.         <li>item5</li>
  16.     </ul>
  17.     <script>
  18.         const ul=document.querySelector("ul");
  19.         console.log(ul);
  20.         ul.addEventListener("click",function(e){
  21.             console.log(e.target);
  22.             console.log(this);
  23.         });
  24.     </script>
  25. </body> 
  26. </html>

点击item4这个li后,输出如下:


606fedfb85c9f.png


3、总结:

target返回的是事件触发对象

this 返回的是事件绑定对象



本文网址:https://www.zztuku.com/index.php/detail-8781.html
站长图库 - Javascript中事件对象的target和this的区别
申明:如有侵犯,请 联系我们 删除。

评论(0)条

您还没有登录,请 登录 后发表评论!

提示:请勿发布广告垃圾评论,否则封号处理!!

    编辑推荐