Показать сообщение отдельно
  #1 (permalink)  
Старый 08.01.2011, 07:41
Новичок на форуме
Отправить личное сообщение для kostysh Посмотреть профиль Найти все сообщения от kostysh
 
Регистрация: 21.11.2010
Сообщений: 9

mouseup не работает при клике на скролбар
Всем привет, помогите пожалуйста решить проблемку.

На странице есть элемент div у которого стиль overflow:auto
Естественно, когда содержимое этого слоя превышает размеры слоя - то появляются скролы (справа, снизу).

у меня есть скрипт, который использует два события - onmousedown и onmouseup. Так вот, если пользователь кликает мышкой внутри слоя - оба события срабатывают, но если он кликает на скролбар, то срабатывает только событие onmousedown, а onmouseup не срабатывает.

все это воспроизводится в ГуглХроме, в других не пробовал, поскольку скрипт пишется только для Хрома.

в JQuery код такой, если кто попробовать хочет:

<div id="test">blablabla</div>

----------------

$('#test').mousedown(function() {
   console.log('MouseDown Fired!');
   $(this).mouseup(function() {
      console.log('MouseUp Fired!');
   });
});


-----

В инете встречал достаточно много подобных вопросов, но ответа пока не нашел. Также нашел запись в баглисте файрфокса, там пользователи пишут, что тоже сталкиваются с подобной проблемой. Но и там не ни костыля ни фикса.

Может кто-то знает как определить момент когда пользователь кликает на скролбаре? как различить mousedown внутри слоя от mousedown на скролах?
Ответить с цитированием