Estoy intentando crear un widget jQuery que se extiende desde ui.slider. Me gustaría tener un método personalizado que se ejecute en el evento 'slide'. He intentado anular la opción de los padres al igual que cuando se utiliza el widget deslizador normalmente, pero me encontré con este problema con alcances variables:La extensión del aparato UI de jQuery - cómo acceder a los padres de eventos
$.widget("ui.myslider", $.ui.slider, {
_create: function() {
this.foo = "bar";
// Outputs "bar"
this._mySlide();
// Outputs "undefined" when triggered
this.options.slide = this._mySlide;
$.ui.slider.prototype._create.apply(this, arguments);
},
_mySlide: function() {
alert(this.foo);
}
}
¿Cómo puedo activar mi función en el caso de diapositivas y tener acceso a mi variable?
Editar: Enlace a ui.slider fuente: https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.slider.js
Editar: Solución
$.widget("ui.myslider", $.ui.slider, {
_create: function() {
$.ui.slider.prototype._create.apply(this, arguments);
this.foo = "bar";
},
_slide: function() {
$.ui.slider.prototype._slide.apply(this, arguments);
alert(this.foo);
}
}