Как воссоздать выделение выделения с помощью событий мыши Javascript и CSS?

Я хочу воссоздать возможность выделения текста.

Выделите приведенное выше предложение. Видите синий цвет, заливающий выделенный текст? Тот, который сообщает вам, что это текст, который вы выбрали, вплоть до символа; Я хочу воссоздать это, а также изменить его цвет.

Как вы могли бы воссоздать подсветку — может быть, не совсем точно — с событиями мыши, предусмотренными в языке? Какая-то комбинация mousedown, mousemove, mouseup и так далее?

Как определяется отбор? Является ли он позиционным, когда mousedown создает исходную точку, mouseup создает конец, а разница заключается в выборе? Если да, то как получить доступ к этой информации сетки?

Я действительно не знаю, с чего начать, или жаргона, который мог бы дать мне какой-либо полезный результат поиска. Я хочу каким-то образом связать функцию выделения с кнопкой клавиатуры, поэтому я хочу воссоздать ее функциональность.

Любая помощь будет принята с благодарностью!


person muiiu    schedule 09.07.2013    source источник
comment
MDN всегда является хорошим результатом поиска...   -  person Teemu    schedule 09.07.2013
comment
Я чувствую себя отсталым. Спасибо!   -  person muiiu    schedule 09.07.2013


Ответы (1)


Вы можете изменить цвет выделения с помощью этого кода css:

::selection {
    background: #ffb7b7; /* Safari */
}

::-moz-selection {
    background: #ffb7b7; /* Firefox */
}

(Пример здесь)

О других вещах см. комментарий Teemus (MDN)

person Fabian N.    schedule 09.07.2013
comment
Спасибо! Думаете, можно будет динамически изменять CSS на основе кнопки, нажатой на клавиатуре при выборе? Зеленый для удержания G, красный для удержания R и так далее? - person muiiu; 09.07.2013