СОВЕТ! Не перебарщивайте с этим скриптом! Не всем понравиться что вы запрещаете что то копировать. Используйте этот скрипт, желательно, для вашего контента! На некоторых сайтах, особенно сильно посещаемых, иногда возникает вопрос, что как-то надо защитить ваш авторский текст от копирования. Как бы банально (скорее пафосно – прим.ред.) это ни звучало, но, по некоторым оценкам, 90% пиздильщиков воров контента можно отфильтровать всего навсего запретив браузеру выделять текст на странице. В данной статье я предложу довольно простой и универсальный метод на javascript, найденный мной на каком-то сайте, где он использовался. Некоторые основы этого вопроса советую почитать по ссылке.
Code
<body id="noselect">
Любой контент, любая разметка, в общем всё, что надо.
<script type="text/javascript">
function disableSelection(target){
if (typeof target.onselectstart!="undefined")
target.onselectstart=function(){return false}
else if (typeof target.style.MozUserSelect!="undefined")
target.style.MozUserSelect="none"
else target.onmousedown=function(){return false}
target.style.cursor = "default"
}
if (document.getElementById("noselect")) {
disableSelection(document.getElementById("noselect"));
}
</script>
</body>
Установка его проста:
Прежде всего выберите элемент, который нельзя будет копировать, и задайте ему идентификатор noselect (по нему javascript найдёт элемент, которому надо отключить выделение). В данном случае это тег body, то есть вся страница.
Затем перед закрывающим тегом вашего элемента (в данном случае body) поместите скрипт из листинга [строчки 3-15].
Скрипт также прост как и его установка. Созданная нами функция disableSelection обрабатывает тот блок, который мы выбрали (которому дали соответствующий идентификатор), при помощи событий onselectstart, onmousedown или при помощи добавления стиля -moz-user-select, работающего в огнелисе.
У скрипта есть два минуса. 1) Если мы отключим для выделения какую-то часть страницы, то начав выделение в других частях страницы, можно будет в конце выделить и то, что отключено для выделения. Именно поэтому скрипт лучше всего использовать для тега body. 2) Нажатие ctrl+a выделит весь текст на страницы, без вариантов. Однако этот вариант устраняется написанием доп.функции, про которую можно вычитать в статье, на которую дана ссылка выше.
Для справочки – для WordPress есть плагин с названием WP-CopyProtect, который… в общем понятно что делает=).