Исправить обрезку раскрывающегося списка при выборе в IE 7 - CSS-хитрости

Anonim

Выполните (по крайней мере, часть «Использование» ниже) после загрузки jQuery и либо в конце страницы, либо в операторе готовности DOM. Обратите внимание, что это исправление действительно создает клон выбранного, который отправит себя с данными формы, но значение имени было изменено, чтобы включить «-clone» в конце, так что просто помните об этом, особенно если вы сериализация всех входов.

Спасибо Крейгу Гуверу.

// Safely use $ (function($) ( $.fn._ie_select=function() ( return $(this).each(function() ( var a = $(this), p = a.parent(); p.css('position','relative'); var o = a.position(), h = a.outerHeight(), l = o.left, t = o.top; var c = a.clone(true); $.data(c,'element',a); c.css(( zIndex : 100, height : h, top : t, left : l, position : 'absolute', width : 'auto', opacity : 0 )).attr(( id : this.id + '-clone', name : this.name + '-clone' )).change(function() ( $.data(c,'element') .val($(this).val()) .trigger('change') )); a.before(c).click(function() ( c.trigger('click'); )); )); // END RETURN ); // END PLUGIN // Usage if ($.browser.msie) ( $('select')._ie_select(); ) ))(jQuery); // END SAFETY