2013-06-19 1 views
2

Мы уже расширили подсказку jquery ui до пользовательского виджета. Нам нужно расширить это еще больше, не касаясь пользовательского виджета. Мне трудно заставить это работать. Пожалуйста помоги.расширение виджета курсора jqueryUI, которое уже было расширено

(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); 

ответ

0

Вы можете расширить его таким же образом, как оригинальный виджет, все, что вам нужно, это конструктор пользовательского виджета:

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

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