2013-03-05 6 views
0

В IE, когда вы выбираете параметр, и он становится выбранным, синяя подсветка остается до тех пор, пока вы не щелкните где-нибудь еще за пределами тега select. (В firefox это не так)есть ли способ удалить фокус на выбор в этом случае

SO Я написал сценарий, который удаляет фокус с элемента, когда есть событие изменения на выбранном.

Но все еще одна небольшая проблема остается: если я выберу Hello, а затем снова Hello option - фокус останется и синяя подсветка. Но если я выбираю привет, а затем и мировой вариант - все работает ... поэтому вы видите скрипт, когда вы нажимаете на опцию для удаления фокуса.

Потом я увидел, что пользователь может просто нажать ввод без нажатия опции -так я написал ввести случай

Но как только я получил счастлив я нашел проблему. есть один последний случай (я молюсь, это последний), который почти такой же, как и предыдущий, - вы нажимаете на выбор и, конечно, видите все параметры, и вы видите, что выделенный параметр в синем - это то, что вы хотите), - но на этот раз вы решите не нажимать клавишу ввода, чтобы выбрать эту опцию, но просто для повторного нажатия на тег select -so в этом случае нет события щелчка по опции, без нажатия кнопки ввода и без изменений, а подсветка остается - Is есть ли способ исправить

$('#select').change(function() { 
    $(this).blur(); 
}); 

$('#select option').click(function(event) { 
    $('#select').blur(); 
}); 

$('#select').keydown(function(event) { 
    // Enter pressed 
    if(event.keyCode == 13) { 
     $('#select').blur(); 
    } 
}); 

ответ

1

хотя это плохая практика, но попробовать этот

$('#select').mouseout(function(){$(this).blur();}) 
+0

нЕТ не позволяет мне выбрать опцию –

Смежные вопросы