From 5ce430d37cae948266c128669680826227bdf86c Mon Sep 17 00:00:00 2001 From: Limos Date: Tue, 29 Jan 2013 12:21:29 -0800 Subject: [PATCH] Update autocomplete/jquery.ui.autocomplete.autoSelect.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add support for jQuery >= 1.9  (Back-compat to jQuery 1.7) - Add support for jQuery UI >= 1.10 (Back-compat to jQuery UI 1.8) --- autocomplete/jquery.ui.autocomplete.autoSelect.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/autocomplete/jquery.ui.autocomplete.autoSelect.js b/autocomplete/jquery.ui.autocomplete.autoSelect.js index 58d81a2..2cd37eb 100644 --- a/autocomplete/jquery.ui.autocomplete.autoSelect.js +++ b/autocomplete/jquery.ui.autocomplete.autoSelect.js @@ -5,17 +5,22 @@ * Dual licensed under the MIT or GPL Version 2 licenses. * * http://github.com/scottgonzalez/jquery-ui-extensions + * */ (function( $ ) { $.ui.autocomplete.prototype.options.autoSelect = true; -$( ".ui-autocomplete-input" ).live( "blur", function( event ) { - var autocomplete = $( this ).data( "autocomplete" ); +$(document).on( 'blur', '.ui-autocomplete-input', function( event ) { + + var jQUIver = jQuery.ui.version.split('.'); + + var autocomplete = ( jQUIver[0] >=2 || ( jQUIver[0] == 1 && jQUIver[1] >= 10 ) ? $(this).data("uiAutocomplete") : $(this).data("autocomplete") ); + if ( !autocomplete.options.autoSelect || autocomplete.selectedItem ) { return; } var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( $(this).val() ) + "$", "i" ); autocomplete.widget().children( ".ui-menu-item" ).each(function() { - var item = $( this ).data( "item.autocomplete" ); + var item = ( jQUIver[0] >=2 || ( jQUIver[0] == 1 && jQUIver[1] >= 10 ) ? $(this).data("uiAutocompleteItem") : $(this).data("item.autocomplete") ); if ( matcher.test( item.label || item.value || item ) ) { autocomplete.selectedItem = item; return false;