jquery - triggering events from nested widgets -
i've built simple jquery ui widget creates slider , tries bubble slide event. code below. however, this._trigger undefined in context. how re-trigger event in case?
(function($) { $.widget("ui.timelineslider", { options : { }, _create : function() { var self = this; var element = self.element; var options = self.options; element.slider({ slide:function (e, ui) { this._trigger("slidehappened", null, {date: ui.value}); } }); }, destroy : function() { this.element.next().remove(); }, _setoption : function(option, value) { } }); })(jquery);
jquery set invocation context (i.e. this
) on events bound through dom node event occurred on. in case div.ui-slider
slide occurred on.
to reference widget slide
handler reference have saved off slide
method can access. luckily have 1 var self = this;
in _create
.
therefore can replace this
self
, you're good.
live example - http://jsfiddle.net/kqywf/
Comments
Post a Comment