我一直在对自定义事件进行大量研究(谷歌),但我似乎找不到我的问题的答案。
我的问题如下:在这个例子中,我有div
一个我正在滑动的 s 内部,div
并且想要制作一个附加到所有孩子div
的自定义事件,所以每当孩子div
的左偏移量达到一定范围时,自定义监听器div
将执行。
所以真正的问题是:我能够在 , 等相同级别上制作真正的自定义事件监听onchange
器click
。onmouseup
哪个会监听我希望他们监听的内容?
我一直在对自定义事件进行大量研究(谷歌),但我似乎找不到我的问题的答案。
我的问题如下:在这个例子中,我有div
一个我正在滑动的 s 内部,div
并且想要制作一个附加到所有孩子div
的自定义事件,所以每当孩子div
的左偏移量达到一定范围时,自定义监听器div
将执行。
所以真正的问题是:我能够在 , 等相同级别上制作真正的自定义事件监听onchange
器click
。onmouseup
哪个会监听我希望他们监听的内容?
我看到你正在使用 jQuery。使用 jQuery 定义自定义事件非常容易。我使用这样的模式:
// Constructor
function Colorbar() {
this.events = $({});
// (Whatever else is in the class)
}
colorbar = new Colorbar();
然后,您可以侦听任何名称的事件:
colorbar.events.on("currentcolorchanged", function(e, cb, ncolor) {
helper.doColorChanged(ncolor);
});
并触发它:
this.events.triggerHandler("currentcolorchanged", [this, ncolor]);
如果您正在使用 DOM 对象,只需缓存 DOM 对象的 jQuery:
var $ele = $("#myElement");
$ele.on("myCustomEvent", function(e) {
// Event handler
});
$ele.triggerHandler("myCustomEvent");
是的,您可以制作真正的自定义事件,如 onchange click onmouseup 等,但是您必须根据现有事件或方法自己编写侦听器代码。
在这种情况下,您需要检查移动事件中的偏移值,当它达到该目标值时,触发自定义事件。