Нашла в интернете довольно хороший скрипт, который помогает защитить контент от копипаста. Конечно защита примитивная, но, как показывает практика очень помогает в случае такого же примитивного копипаста "юкоз-юзерами" (и не только). Скрипт хорош тем, что запрещает только лишь выделение мышью (а значит по мнению браузера просто нечего копипастить), все остальные функции сайта (кнопки, выделение текста в полях форм) работают как обычно. Сам код скрипта:
Код вставляется перед закрывающим тегом /head. Перед использованием обязательно сделайте резервную копию изменяемого. Скрипт проверен во всех самых популярных браузерах (Firefox 4 и 5, Opera, Google Chrome, Safari и даже в IE9.0), на CMS Joomla 1.5 и DLE 9.2. Возможно кому-то пригодится.
| Код |
|---|
<sc ript type="text/javascript">
function preventSelection(element){
var preventSelection = false;
function addHandler(element, event, handler){
if (element.attachEvent)
element.attachEvent('on' + event, handler);
else
if (element.addEventListener)
element.addEventListener(event, handler, false);
}
function removeSelection(){
if (window.getSelection) { window.getSelection().removeAllRanges(); }
else if (document.selection && document.selection.clear)
document.selection.clear();
}
function killCtrlA(event){
var event = event || window.event;
var sender = event.target || event.srcElement;
if (sender.tagName.match(/INPUT|TEXTAREA/i))
return;
var key = event.keyCode || event.which;
if (event.ctrlKey && key == 'A'.charCodeAt(0)) // 'A'.charCodeAt(0) можно заменить на 65
{
removeSelection();
if (event.preventDefault)
event.preventDefault();
else
event.returnValue = false;
}
}
addHandler(element, 'mousemove', function(){
if(preventSelection)
removeSelection();
});
addHandler(element, 'mousedown', function(event){
var event = event || window.event;
var sender = event.target || event.srcElement;
preventSelection = !sender.tagName.match(/INPUT|TEXTAREA/i);
});
addHandler(element, 'mouseup', function(){
if (preventSelection)
removeSelection();
preventSelection = false;
});
addHandler(element, 'keydown', killCtrlA);
addHandler(element, 'keyup', killCtrlA);
}
preventSelection(document);
</script> |
Код вставляется перед закрывающим тегом /head. Перед использованием обязательно сделайте резервную копию изменяемого. Скрипт проверен во всех самых популярных браузерах (Firefox 4 и 5, Opera, Google Chrome, Safari и даже в IE9.0), на CMS Joomla 1.5 и DLE 9.2. Возможно кому-то пригодится.



Я ж писала скрипт примитиииивный... Т.е. рассчитан на копипастера, которого природа не сильно обогатила серым мозговым веществом 