jQueryUI创建封装的最佳实践

时间:2014-04-01 07:31:09

标签: jquery jquery-ui encapsulation

抱歉标题不好。案例是我正在研究一个GUI框架 - 它已经在Android上,很多常见元素现在被移植到Web上。为此,我希望创建相同的功能。作为一个例子,我们在android中有3种类型的按钮,一个普通按钮,经过验证的按钮(只是一个带有默认图标和文本的按钮)和一个取消按钮。这些都是可读性的不同类型。我想在jQueryUI中反映这一点:

$("button").button(); // normal button
$("verify_button").verifybutton(); 
$("cancel_button").cancelbutton();

显然它只是一个普通的按钮();但是,对于一些设置参数,我找不到如何最容易做到这一点的信息。我需要为此制作自己的小部件吗?欢迎任何提示。

1 个答案:

答案 0 :(得分:1)

实现这一目标的简单方法确实是派生自己的小部件。 widget factory文档说明了系统的工作原理。

例如,你可以写:

$.widget("dennis.verifybutton", $.ui.button, {
    _create: function() {
        this._super();
        // Customize widget creation...
    },
    _destroy: function() {
        // Customize widget cleanup...
        this._super();
    }
});

最终结果将是一个派生按钮小部件,您可以通过$("selector").verifybutton()实例化。