Полосы прокрутки Google Chrome и перетаскиваемый плагин jQuery UI - PullRequest
2 голосов
/ 12 января 2012

Во-первых, пример: http://jsfiddle.net/Koviko/92PZZ/

Здесь я использую плагин jQuery UI draggable, чтобы контейнер можно было перетаскивать горизонтально.Я также заставил второй дочерний элемент включить полосу прокрутки.Проблема в том, что разные браузеры по-разному обрабатывают использование этой полосы прокрутки.Я протестировал его в IE8 и последних стабильных сборках Chrome и Firefox.

Существует два варианта использования для желаемого поведения:

  1. нажатие и удерживание мыши наполоса прокрутки и перемещение по вертикали, и
  2. нажатие и удерживание мыши на полосе прокрутки и перемещение по горизонтали.

Первый вариант использования (вертикальное перемещение):

IE8 и Firefox : никаких проблем.

Chrome : после того, как вы отпустите кнопку мыши, при перемещении мыши контейнер будет перемещаться с помощью курсора мыши.Чтобы освободить контейнер, необходимо убрать мышь с полосы прокрутки (внизу, снаружи контейнера), а затем попытаться перетащить.

Второй вариант использования (горизонтальное перемещение):

IE8 : Горизонтальное перетаскивание вообще не вызывает движения.

Firefox : Горизонтальное перетаскивание заставляет контейнер перемещаться.

Chrome : Горизонтальное перетаскивание вызывает перемещение контейнера и, как и при вертикальной прокрутке, не освобождает перетаскивание после отпускания кнопки мыши.Он очищается так же.


Итак, в основном, Поведение Chrome - это проблема .Я бы согласился с поведением в Firefox или IE8.Есть ли способ заставить это поведение из Chrome?

1 Ответ

1 голос
/ 18 мая 2012

Это показано в этой скрипте: http://jsfiddle.net/FGXnR/

Решение дано в этом ответе: Использование jQuery UI Draggable, как избежать перетаскивания при использовании полосы прокрутки?

В основном, используйте маркер : опция , чтобы указать конкретную вещь для перетаскивания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...