diff --git a/js/widgets/forms/select.js b/js/widgets/forms/select.js index 35e31ae3ef4..9d4725a9075 100644 --- a/js/widgets/forms/select.js +++ b/js/widgets/forms/select.js @@ -186,25 +186,34 @@ $.widget( "mobile.selectmenu", $.mobile.widget, { }); // In many situations, iOS will zoom into the select upon tap, this prevents that from happening - if ( self.options.preventFocusZoom ) { - self.button.bind( "vmousedown", function() { - $.mobile.zoom.disable( true ); - }); - self.label.bind( "click focus", function() { - $.mobile.zoom.disable( true ); - }); - self.select.bind( "focus", function() { - $.mobile.zoom.disable( true ); - }); - self.button.bind( "mouseup", function() { + self.button.bind( "vmousedown", function() { + if ( self.options.preventFocusZoom ) { + $.mobile.zoom.disable( true ); + } + }); + self.label.bind( "click focus", function() { + if ( self.options.preventFocusZoom ) { + $.mobile.zoom.disable( true ); + } + }); + self.select.bind( "focus", function() { + if ( self.options.preventFocusZoom ) { + $.mobile.zoom.disable( true ); + } + }); + self.button.bind( "mouseup", function() { + if ( self.options.preventFocusZoom ) { setTimeout(function() { $.mobile.zoom.enable( true ); }, 0 ); - }); - self.select.bind( "blur", function() { + } + }); + self.select.bind( "blur", function() { + if ( self.options.preventFocusZoom ) { $.mobile.zoom.enable( true ); - }); - } + } + }); + }, selected: function() {