KoU*_*rch 8 jquery jquery-delegate jquery-on
是否可以使用jquery .on()方法而不是.delegate()没有要监听的事件?
根据.on()文件:
.on(events [,selector] [,data],handler(eventObject))
该events参数是不可选的.
使用.on()/ .delegate()是动态添加元素.
您可以使用自定义事件:(它仍然是一个事件,但您的事件)
标记:
<div id='mePlease'>
<div id='noWay'>Hi</div>
</div>
$('#mePlease').on('wacky','#noWay',function(){
alert('wackyEnough');
});
$('#noWay').trigger('wacky');
Run Code Online (Sandbox Code Playgroud)
但实际上,这可以通过简单的函数调用来完成.
这些功能的目的是将功能委托给事件; 所以不,你不能省略这些函数调用中的events参数.
我怀疑你想要的是对页面加载(异步)后加载的一些元素"做东西" ,不是吗?也许您还需要对页面加载中已存在的元素执行此操作?
在这种情况下,我建议你将声明包装在一个函数中,并在页面加载和异步调用完成后调用该函数.
由于.on()s 的目的是将事件处理程序附加到某个元素,因此在没有事件的情况下使用它绝对没有意义。这就是为什么需要事件参数。
来自文档:
描述:将一个或多个事件的事件处理函数附加到所选元素。