1 | function delegate(selector, type, data, func); |
主要是因为delegate的绑定是绑定到自身的,但是事件的触发却是由子元素(selector指定的),而且是必须由该子元素触发(其他子元素就不行),触发的原理是事件的冒泡机制,
即使该父元素本身发生该事件了,或者父元素的其他子元素发生该事件了也不会触发该,就是这么特殊。
由于scroll不是冒泡类型的事件,所以不会触发。
要想达到绑定scroll到一个元素监控其滚动,可以使用on,或者bind,或者scroll
1 | window.scroll(func); |
也就是说,想绑定到子元素,同时能触发父元素的滚动事件是不可能的。