2
4

1 回答 1

0

这是一个相当古老的问题,但其他人可能有同样的问题。

正如评论中所说,您可以将默认事件处理程序函数定义为可以轻松覆盖的选项:

$.widget("ui.mywidget", {

    // Default option
    options: {
        'myevent': function() {
            alert('test1');
        }
    },

    // Public 'myevent' function
    myevent: function() {
        if($.isFunction(this.options.myevent))
            this.options.myevent();
    }
});

// Override the default 'myevent' option
$('#placeHolder').mywidget({
    myevent: function() {
        alert('test2');
    }            
});

$('#placeHolder').mywidget('myevent');

我更新了你jsFiddle的说明。

于 2014-02-17T22:49:18.663 回答