如何在小部件创建时向jQuery UI小部件工厂事件添加侦听器?
我在链接中读到,当使用on创建jQueryUI小部件时,我们可以使用事件处理程序 但是,当我在下面的JSFIDLE中尝试时,它不起作用如何在小部件创建时向jQuery UI小部件工厂事件添加侦听器?,jquery,jquery-ui,Jquery,Jquery Ui,我在链接中读到,当使用on创建jQueryUI小部件时,我们可以使用事件处理程序 但是,当我在下面的JSFIDLE中尝试时,它不起作用 $.widget( "my.customwidget", { _create: function() { alert('Hi!'); } }); $('#widget').on('widgetcreate', function (event, ui) { alert('Hi again!'); }); $('#widget
$.widget( "my.customwidget", {
_create: function() {
alert('Hi!');
}
});
$('#widget').on('widgetcreate', function (event, ui) {
alert('Hi again!');
});
$('#widget').customwidget();
警报“你好!”不会被处决。这是我的建议
除非我这么做
$.widget( "my.customwidget", {
_create: function() {
this.element.trigger('widgetcreate');
}
});
我做错了什么?事件是使用小部件本身的名称绑定的,即customwidget。由于继承模型,您只有customwidget元数据,但没有widget元数据。在您的示例中,事件的名称实际上是customwidgetcreate: 以下是最新的小提琴:
不久前,有一个关于类似主题的相关问题:我在这里的职责是什么?这是任何元素吗?根据jQuery-ui,它应该是名称空间。你没有包括jQuery或jQuery-ui。你的小提琴工作得很好!LoltheFiddle:正在显示警报。文档中的哪个位置说明了这一点?我只是想知道我是否遗漏了文档中的一些段落或页面。。
$.widget( "my.customwidget", {
_create: function() {
this.element.trigger('widgetcreate');
}
});
$('#widget').on('customwidgetcreate', function (event, ui) {
alert('Hi again!');
});