Je voudrais créer une version personnalisée du widget triable. J'ai cherché de la documentation, mais je n'ai pas trouvé quelque chose de vraiment précis. La meilleure information que j'ai trouvée était: http://jqueryui.pbworks.com/Widget-factory.Comment étendre un widget jquery ui? (1.7)
J'ai essayé:
$.widget("ui.customsortable", $.extend($.ui.sortable, {
_init: function() {
$.widget.prototype._init.apply(this, arguments);
}
}));
Mais .widget.prototype._init $ n'est pas la fonction que je veux appeler, je suppose, car il est le prototype .widget $.
Alors, j'ai essayé quelque chose que je lis ici et là:
var _init = $.ui.sortable.prototype._init;
$.widget("ui.customsortable", $.extend($.ui.sortable, {
_init: function() {
_init.apply(this, arguments);
},
}));
Mais:
- Je ne peux pas croire que je dois stocker toutes les méthodes que je veux passer outre comme celui-ci, il est tellement moche.
- Il déclenche une erreur ("this.refresh n'est pas une fonction"), ce qui signifie que la méthode refresh n'existe pas. Cela signifie-t-il que je devrais recréer toutes les méthodes que je veux remplacer? Quel est le point de prolongation dans ce cas?
Est-ce qu'il me manque quelque chose ici?
Merci pour votre aide!
Dans ce 1.8 est très facile. – PetersenDidIt
Comment est-ce facile dans 1.8? – powtac
Dans 1.8, la fonction $ .widget() accepte un widget de base comme second paramètre. http://docs.jquery.com/UI_Developer_Guide#The_widget_factory – itsadok