Есть ли событие JavaScript, которое запускается при очистке выделенного текста? - PullRequest
2 голосов
/ 13 июня 2011

Я использую событие JavaScript select, чтобы определить, когда пользователь выбирает диапазон символов в текстовой области. Однако событие, по-видимому, не вызывается, когда выделение очищено , либо щелкая в другом месте текстовой области, либо перемещая курсор.

Я проверял это в Chrome 12 и Firefox 4

Ответы [ 2 ]

3 голосов
/ 13 июня 2011

Есть onblur событие, которое вы можете добавить после выбора:)

var t = document.getElementsByTagName('textarea')[0];
t.onselect = function() {
    alert('select');
    if (typeof(t.onblur) !== 'function') {
        t.onblur = function() {
            alert('selection cleared');
            t.onblur = null;
        }
    }
}

jsFiddle

Моя идея: создать функцию, которая будетвыполняется после того, как текст был выделен, и после того, как он был выполнен, отмените его ... так как больше нет выделения текста, и когда текст будет выбран снова - функция будет определена снова

1 голос
/ 13 июня 2011

Как насчет комбинации событий click, blur и keypress, привязанных к элементу?

Вот демоверсия JavaScript события выбора / отмены выбора

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