Как обнаружить «перетаскивание» внутри входа? - PullRequest
3 голосов
/ 12 мая 2011

У меня есть поле ввода, которое выглядит так:

<input id="test" value="abdefg" />

Мне бы хотелось, чтобы событие jQuery обнаруживало, если я перетаскиваю текст вокруг поля ввода. С перетаскиванием я имею в виду, что вы сначала выбираете ab и перетаскиваете это выделение так, чтобы оно заканчивалось после g .

Можно ли обнаружить подобные вещи?

Ответы [ 2 ]

4 голосов
/ 12 мая 2011

Я не знаю ни одного конкретного события, которое вызывается при перетаскивании текста. Но должно быть возможно просто сохранить значение поля в mousedown, а затем сравнить его с новым значением поля, когда инициируется событие mouseup. Если значение изменилось, что-то было перетащено.

Или я что-то здесь упускаю?

2 голосов
/ 12 мая 2011

Специально для этой цели нет события, но это действие будет зафиксировано событием oninput.

Пример: http://jsfiddle.net/qGzav/1

Обратите внимание, что oninput не поддерживается IE8 и ниже, но его можно эмулировать с помощью события onpropertychange. У меня есть плагин, который нормализует это событие для всех основных браузеров - http://whattheheadsaid.com/projects/input-special-event.

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