From: Scott González Date: Mon, 27 Sep 2010 14:44:04 +0000 (-0400) Subject: Progressbar: Added a complete event. Fixes #3500 - Progressbar callback at the end. X-Git-Tag: 1.8.6~56 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=0b6710aed7fc9a9412a975c9f70d3fd6a87c4b02;p=jquery-ui.git Progressbar: Added a complete event. Fixes #3500 - Progressbar callback at the end. --- diff --git a/tests/unit/progressbar/progressbar_events.js b/tests/unit/progressbar/progressbar_events.js index b273cd5e9..22b301abe 100644 --- a/tests/unit/progressbar/progressbar_events.js +++ b/tests/unit/progressbar/progressbar_events.js @@ -14,4 +14,25 @@ test("change", function() { }).progressbar("value", 5); }); +test( "complete", function() { + expect( 3 ); + var changes = 0, + value; + + $( "#progressbar" ).progressbar({ + change: function() { + changes++; + same( $( this ).progressbar( "value" ), value, "change at " + value ); + }, + complete: function() { + equal( changes, 2, "complete triggered after change" ); + } + }); + + value = 5; + $( "#progressbar" ).progressbar( "value", value ); + value = 100; + $( "#progressbar" ).progressbar( "value", value ); +}); + })(jQuery); diff --git a/ui/jquery.ui.progressbar.js b/ui/jquery.ui.progressbar.js index e0b728f1a..5347e026b 100644 --- a/ui/jquery.ui.progressbar.js +++ b/ui/jquery.ui.progressbar.js @@ -64,6 +64,9 @@ $.widget( "ui.progressbar", { this.options.value = value; this._refreshValue(); this._trigger( "change" ); + if ( this._value() === this.max ) { + this._trigger( "complete" ); + } } $.Widget.prototype._setOption.apply( this, arguments );