<select> перезагружает страницу при нажатии на Opera Mini

Нажав на <select> элемент с border:none; а также cursor:pointer в Opera Mini перезагрузит страницу. Минимальный пример:

select {
  cursor: pointer;
  border: none;
}
<select>
  <option value="1">English</option>
  <option value="2">Mathematics</option>
  <option value="3">Social Studies</option>
  <option value="4">Business</option>
</select>

Любой знает лучший способ исправить это, кроме удаления одного из этих свойств CSS или изменения границы на solid transparent 1px?

1 ответ

Решение

Это cursor: pointer; особенность Если вы нажмете на pointer Область Opera Mini отправляет страницу на сервер для запуска делегирования события JavaScript.

Делегация мероприятий в Opera Mini

До недавнего времени делегация Event не работала в Opera Mini. Теперь это реализовано тем, что Сервер отправляет кликабельные области клиенту для чего угодно с помощью курсора: указатель. Делегирование в основном работает, как и ожидалось, с событиями кликов, за исключением элементов формы; довольно трудно определить, должно ли их использование вызывать событие (и, следовательно, обходить сервер) или нет, если слушатель события не подключен непосредственно к ним. Обходной путь - добавить фиктивный слушатель события к необходимому элементу формы.

Другие вопросы по тегам