扩展已扩展的jqueryUI工具提示小部件

时间:2013-06-19 19:04:29

标签: jquery widget extend

我们已经将jquery ui工具提示扩展为自定义小部件。我们需要进一步扩展它,而无需触及自定义小部件。我很难让这个工作。请帮忙。

(function ($) {
var extensionMethods = {
        open: function () {
            var childElem = target.children('img');
                if (childElem.length) {
                    childElem.data('alt', childElem.attr('alt'));
                    childElem.removeAttr('alt');                
                }
            $ui.tooltip.prototype.open.apply(this, arguments);
            console.log("extension open works!");
        },
        close: function () {
            var childElem = target.children('img');
                if (childElem.data('alt')) {
                    childElem.attr('alt', childElem.data('alt'));
                }
            $ui.tooltip.prototype.close.apply(this, arguments);
            console.log("extension close works!");
        },        
    }

    var methods = $.extend(true, {}, $.ui.tooltip.prototype, extensionMethods);
    $.widget('my.customtooltip', methods);


})(jQuery);

1 个答案:

答案 0 :(得分:0)

您可以像原始窗口小部件一样扩展它,您只需要自定义窗口小部件的构造函数:

// extend basic widget
var myTooltipWidget = $.widget('myTooltipWidget', $.ui.tooltip, {
    // widget code here
});

// extend custom widget
var myExtendedTooltipWidget = $.widget('myExtendedTooltipWidget', myTooltipWidget, {
    // widget code here
});