пятница, 4 апреля 2008 г.

Prevent text selection или отмена выделения текста

При разработке клиентской части приложения иногда нужно отменить выделение текста, которое делает браузер при двойном клике на элементе или при drag'n'drop.
Этого можно избежать, используя объект document.selection.
Пишем простую функцию, которая отменяет выделение текста и задаем ее на соответствующее событие:

function clearSelection()
{
var sel;
if(document.selection && document.selection.empty)
{
document.selection.empty();
}
else if(window.getSelection)
{
sel = window.getSelection();
if(sel && sel.removeAllRanges)
sel.removeAllRanges();
}
}Syhi-подсветка кода



А еще проще (и лучше ;-) - используем jQuery плагин jQuery Disable Text Select Plugin http://www.jdempster.com/2007/07/14/jquery-disable-text-select/

Подключаем единственный файл jquery.disable.text.select.js и задаем отмену выделения текста для нужных элементов:

$("#wrapper").disableTextSelect();Syhi-подсветка кода








1 комментарий:

Анонимный комментирует...

Вас беспокоит коллега по "перу" с блога flora.org.ru. Мы оба пишем
про jQuery. И поскольку у нас до сих пор нет централизованного
сайта по jQuery на русском языке, я начал создавать такой центр
информации и приглашаю Вас принять посильное участие в этом проекте.

Если Вас заинтересовало данное предложение, то свяжитесь, пожалуйста, со мной по e-mail: dc-rom@mail.ru.