JQuery对自定义事件 - .bind("foo", function(e)...
有很好的支持。但是,如果触发事件的机制还没有准备好,只能在那些事件绑定的元素上构建,在jQuery中绑定自定义事件时的触发代码
例如,我想要一个scrollin
事件,当一个元素滚动到一个视口时被触发。要做到这一点,我会onscroll
必须检查所有的元素和trigger
scrollin
那些在视口之外,现在在里面。这是不可接受的。
有一些技巧来加速它。例如,其中一个插件检查“私人”$.cache
中的所有元素,并仅检查具有scrollin
事件绑定的元素。
但这也很丑。我需要的是一个额外的回调事件的绑定(除了处理回调),这将负责滚动管理,即将元素放入一些elementsCheckOnScrol
缓存阵列中。
我在寻找类似:
$.delegateBind("scrollin", function(jqSelection) { ... });
element.bind("scrollin", function(e) {..}); //Calls^after internal bind management
编辑:这将是很好的API!
$.bind("bind", function(onWhat) { ... })
:-)
事件委托,并且.live方法可能会授予您想要的内容。一个小小的演示可以帮助我们;) – roselan