devote, у меня абсолютно то же данные. Win32 - это разрядность самой Оперы, а не Винды.
Deff, реально как-то обойти этот баг? |
Dimox,
Ну костыль мон приделать - ток смысл - может иначе построить ? |
По-другому никак, document.onclick обязательно нужен.
|
<!DOCTYPE HTML> <html> <head> <style> body{ width:100%; } </style> </head> <body style="padding-top:200px;width:100%;text-align:center"> <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> document.getElementById('select').focus(); document.onclick = function(e) {if(Key){ alert('Сработало событие onclick!'); }} var Key = true; document.getElementById('select').onchange = function() { Key = false; //Запрет onclick на время смены селекта setTimeout('Key = true',40) } </script> </body> </html> |
Большое спасибо!
|
Deff,
странный костыль, хотя можно было сделать проще: <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> document.onclick = function(e) { if ((e&&e.target||{}).nodeName !== "OPTION") { alert('Сработало событие onclick!'); } } </script> |
devote,
Cам удивилсо - ксать проверил еще у трёх юзеров с ХР Ксать если ставить тестовый контент внутрь нормальной сайтовой обёртки - эффекта не наблюдаю (*Не голый тест Вот сюда ставил http://designforum.bestff.ru/ |
а еще лучше так:
<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> document.addEventListener && document.addEventListener('keydown', function(e) { if (e.target.nodeName === "SELECT") { e.target._keypressed = true; } }, false); document.onclick = function(e) { if ((e&&e.target||{}).nodeName === "OPTION" && e.target.parentNode._keypressed) { e.target.parentNode._keypressed = false; return; } alert('Сработало событие onclick!'); } </script> |
|
Цитата:
|
Часовой пояс GMT +3, время: 18:14. |