jQuery event.delegateTarget 属性

实例

更改 <div> 元素(<button> 元素的先祖)的背景色:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <script src="https://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
  5. <script>
  6. $(document).ready(function(){
  7. $("div").on("click", "button", function(event){
  8. $(event.delegateTarget).css("background-color", "pink");
  9. });
  10. });
  11. </script>
  12. </head>
  13. <body>
  14. <div style="background-color:yellow">
  15. <p>单击按钮更改此 div 的背景色。</p>
  16. <button>Click me!</button>
  17. </div>
  18. <div style="background-color:yellow">
  19. <p>单击按钮更改此 div 的背景色。</p>
  20. <button>点击这里</button>
  21. </div>
  22. </body>
  23. </html>

定义与用法

event.delegateTarget 属性返回当前调用的 jQuery 事件处理程序所附加的元素。

此属性对于 on() 方法附加的委托事件非常有用,其中事件处理程序附加在正在处理的元素的祖先上。

提示event.delegateTarget 等于 event.currentTarget,如果事件直接绑定到元素且未发生委托(请参见下面的实例)。


语法

  1. event.delegateTarget
参数描述
event必填。 event 参数来自事件绑定函数

更多实例

显示委托发生时 delegateTarget 和 currentTarget 之间的差异。

delegateTarget 与 currentTarget 对于直接绑定的事件是相等的

分类导航