![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Burrr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 459 Регистрация: 4.9.2005 Репутация: 10 Всего: 20 |
Чтобы сразу было понятно о чем речь, привожу в пример код:
В ИЕ при нажатии-отпускании клавиши мыши внутри ДИВ-а, всё работает как положено. Однако при нажатии клавиши на скролле, событие отпускания (mouseup) не срабатывает. В Гекко такого не наблюдается, всё работает как надо. Помогите пофиксить эту ИЕ-шную багу! |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Можно уменьшить вред введением
<div ... onscroll=f() и обработкой. Но там всё равно event.button не отлавливается, отпускание не определишь. |
|||
|
||||
| Иль |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 544 Регистрация: 3.3.2005 Где: Москва Репутация: 2 Всего: 14 |
Burrr, сделай через просачивание событий и отлов события на родительском элементе. То есть оберни первый div в еще один div с CSS/height:auto и лови события на нем.
Ничего не обещаю сам не проверив, но должно работать Можешь сказать, почему тебе onClick не достаточно (если это не в образовательных целях конечно), тк может по другому порешится? Burrr, 12345c сами не хотите поэксперементировать? напишите? -------------------- Ты виндусятник?... А я да. |
|||
|
||||
| Иль |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 544 Регистрация: 3.3.2005 Где: Москва Репутация: 2 Всего: 14 |
Хотя, можно и на body отлавливать события.
А может такое решение тоже не стработает. Надо пробовать, как там на скроле себя ИЕ поведет. Видать скрол это отдельная нода, вне видимого DOM. Такое поведение я в Gecko замечал. Добавлено @ 02:36 Но кажись у меня все работало -------------------- Ты виндусятник?... А я да. |
|||
|
||||
| Burrr |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 459 Регистрация: 4.9.2005 Репутация: 10 Всего: 20 |
Событие к сожалению не просачивается, такое ощущение, что оно в ИЕ не возникает. Ни на внешнем ДИВе, ни в БОДИ его нет Зато, если намеренно допустить ошибку в обработчике mouseDown (например поставить exit;), то mouseUp срабатывает. Такое ощущение, что mouseDown просто не прекращается. К сожалению работающий вариант с ошибкой в строке статуса также не подходит. Неужели нет решений?
Решаю довольно нетривиальную задачу, связанную со скроллом и в силу определенных причин нужно отловить именно mouseup в диве. |
||||
|
|||||
| Иль |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 544 Регистрация: 3.3.2005 Где: Москва Репутация: 2 Всего: 14 |
Попробую тогда сам замутить скипт. Может вечером.
-------------------- Ты виндусятник?... А я да. |
|||
|
||||
| Иль |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 544 Регистрация: 3.3.2005 Где: Москва Репутация: 2 Всего: 14 |
Замутил, убедился
При клике на самой пимпочке скрола без ее сдвига все возможные события после mouseDown не зажгутся. Тупик -------------------- Ты виндусятник?... А я да. |
|||
|
||||
| Burrr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 459 Регистрация: 4.9.2005 Репутация: 10 Всего: 20 |
Жаль!
Спасибо, что приложили усилия для решения задачи! Хорошо бы сделать какой-нить форум (или тему) для таких вот задач (под рубрикой impossible |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |