Jump to content

защита от копирования текста


Recommended Posts

В интернете можно найти много всего для решения данной проблемы. Правда все это от дурака или усложнить задачу людям этим занимающимся, кому надо всё равно скопирует текст, отключив к примеру JavaScript в браузере.

Link to comment
Share on other sites

Вообще там где код нашли должна быть по логике и демка этого кода или инструкция по его добавлению...

 

Там должны быть настройки, можно и в какой ни будь .js файл добавить который на всех страницах выводиться, например в конец файла ajax-cart.php, можно и в footer или header.tpl вставить, нужно еще javascript код смотреть.

Link to comment
Share on other sites

тот такой, я просто пробовал его вставлять и в header и footer 

 

<body onkeypress="return catchControlKeys(event)">

 

<script type="text/javascript">
document.ondragstart = test;
document.onselectstart = test;
document.oncontextmenu = test;
function test() {
return false;
}
document.oncontextmenu;
function catchControlKeys(event){
var code=event.keyCode ? event.keyCode : event.which ? event.which : null;
if (event.ctrlKey){
// Ctrl+U
if (code == 117) return false;
if (code == 85) return false;
// Ctrl+C
if (code == 99) return false;
if (code == 67) return false;
// Ctrl+A
if (code == 97) return false;
if (code == 65) return false;
}
}
</script>
<script language=JawaScript>
<!--
var message="";
//////////////////////////////
function clickIE() {if (document.all) {(message);return false;[spam-filter]
function clickNS(e) {if
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;[spam-filter]}
if (document.layers)
{document.captureEvents(Event.mousedown);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}
document.oncontextmenu=new Function("return false")
document.ondragstart=new Function("return false");
//запрет на перетаскивание
document.onselectstart=new Function("return false");
//запрет на выделение элементов страницы
function test(){
return false
}
//-->
</script>

Link to comment
Share on other sites

Самое простое это к тэгу body добавить параметры oncontextmenu="return false" onselectstart="return false" ondragstart="return false", должно получиться примерно так:

 

<body {if $page_name}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if} oncontextmenu="return false" onselectstart="return false" ondragstart="return false">

Не нужно тупо копировать код выше и вставлять в свой код заменяя в нем тэг body на этот, вставляйте значения со смыслом!

 

Далее например в ajax-cart.php в конце можно вставить эти строчки:

document.ondragstart = noselect; 
document.onselectstart = noselect;  
document.oncontextmenu = noselect; 
function noselect() {return false;} 

Ну или перед закрывающим тэгом </body> в footer.tpl:

 

<script>
document.ondragstart = noselect; 
document.onselectstart = noselect;  
document.oncontextmenu = noselect; 
function noselect() {return false;} 
</script>
Edited by Kerm (see edit history)
Link to comment
Share on other sites

один сайт заработал. а второй теперь ошибка 

Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "/home/kandix/public_html/themes/default-bootstrap/footer.tpl" on line 49 "function noselect() {return false;}" unknown tag "return" <-- thrown in/home/kandix/public_html/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 49

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...