Javascript-форум (https://javascript.ru/forum/)
-   Opera, Safari и др. (https://javascript.ru/forum/css-html-browser/)
-   -   Баг в Опере (select и onclick) (https://javascript.ru/forum/css-html-browser/34927-bag-v-opere-select-i-onclick.html)

Dimox 24.01.2013 20:43

Баг в Опере (select и onclick)
 
Обнаружил следующий баг в Опере (версия 12.12 на Windows 7 x64): если с клавиатуры менять select, то почему-то срабатывает событие onclick.

Живой пример можно увидеть здесь.

Реально ли как-то обойти этот баг?

devote 24.01.2013 21:02

странно, по твоей ссылке что ты дал, так и происходит, но этого нет например здесь:
Нажмите на клавиатуре стрелку вверх или вниз.<br /><br />

<select name="" id="select">
	<option value="">11111111111</option>
	<option value="">22222222222</option>
	<option value="" selected>33333333333</option>
	<option value="">44444444444</option>
	<option value="">55555555555</option>
</select>
<script type="text/javascript">
document.getElementById('select').focus();
document.onclick = function(e) {
    alert('Сработало событие onclick при изменении селекта!');
}
</script>

И так же не удалось это воспроизвести локально на компе.

Видимо на сайте http://codepen.io/ что-то явно модифицируется в коде.

devote 24.01.2013 21:06

и тут не воспроизводится: http://learn.javascript.ru/play/VSqSjc

Deff 24.01.2013 21:13

:) Если кликнуть на элементы рядом - тож срабатывает - чот замудрено

И фокус там как то лишний для чистоты эксперимента

devote 24.01.2013 21:17

Цитата:

Сообщение от Deff
Если кликнуть на элементы рядом - тож срабатывает - чот замудрено

ну оно и должно сработать, мы же событие на документ вешаем. В этом плане все Ок.

Цитата:

Сообщение от Deff
И фокус там как то лишний для чистоты эксперимента

это что бы после обновления страницы не ставить фокус к селекту. Что бы можно было сразу юзать стрелки. В этом и есть вся соль.

Но лично мне не удалось это воспроизвести локально. Это скорее не баг оперы, а баг той песочницы

Dimox 24.01.2013 21:31

В том-то и дело, что у меня баг срабатывает и локально с моего компа. Может причина в каких-то юзер-скриптах или виджетах?

Цитата:

и тут не воспроизводится: http://learn.javascript.ru/play/VSqSjc
У меня воспроизвелось.

Получается, что че-то не так в моей Опере.

Deff 24.01.2013 21:31

Цитата:

Сообщение от devote
не удалось это воспроизвести локально


http://hostjs-mybb2011.narod.ru/Dimox.htm

У меня срабатывает в Опере
Срабатывает если даж если document.getElementById('select').focus(); убрать и выставить фокус по таб и нажать вверх=вниз

Dimox 24.01.2013 21:37

Отключил все юзер-скрипты и расширения и перезагрузил Оперу - все равно бажит.

devote 24.01.2013 21:43

ну хз.. у меня не воспроизводится, вот Опера у меня ну и система:

Хотя опера пишет платформа win32

Deff 24.01.2013 21:52

devote,
У меня 32 ХP2 http://s3.uploads.ru/NmCFS.jpg


Часовой пояс GMT +3, время: 19:19.