0

我正在使用 Eric Hynds 的多选小部件。

我想修改它,添加一个选项并在 _refresh 方法中包含一个额外的步骤。现在我可以轻松地修改插件来实现我的目标,但我想做的是创建一个包装器或类似的东西,这意味着我可以在将来更新小部件,同时保持我的更改分开。

该小部件是使用 jquery ui 1.8 小部件工厂构建的。

实现我的目标的最佳方式是什么?

4

1 回答 1

1

在不知道所有详细信息的情况下,您可以尝试扩展小部件。

$.extend($.widget, {refresh:function(){your function here}});

我用它来向小部件添加功能,但不用于覆盖现有功能。

您还尝试使用继承,这可能是正确的调用。定义新小部件时,有一个参数可以传入现有的基本小部件

(function ($) {
$.widget('an.originalwidget', $.a.yourwidget, {
    ...
    refresh: function() {
        // override code
    }
});
}(jQuery));

这是一个很好的尝试链接:http: //msdn.microsoft.com/en-us/library/hh404085

编辑:我使用 Jquery 1.7.2 进行了此操作,我注意到您使用的是 1.8,虽然我认为不会对此进行任何更改,您可能需要检查

于 2012-08-07T15:36:30.617 回答