Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru Защита от копирования не работает в Moziila Firefox, как исправить?

Защита от копирования не работает в Moziila Firefox, как исправить?


     28.09.2016    Общие вопросы, jQuery    533

вопрос
Использую данный код:
<script type="text/javascript">
document.ondragstart = noselect;
document.onselectstart = noselect;
document.oncontextmenu = noselect;
function noselect() {return false;}
</script>


Во всех браузерах работает как надо, но в Mozilla Firefox можно выделять текст, как запретить?

Ответил: Iceman


1 вариант и 2 вариант все работает, проверял лично и тот и тот.

Комментарии пользователей (12)

ZeN41k
97

ZeN41k - 28 сентября 2016 15:04 - Юзер

Также нашел аналогичный код, который работает в мозилле:
<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>


Как из него выдернуть нужное и добавить в мой код?

irrwisch
49

408 | 160

irrwisch - 28 сентября 2016 15:24 - Юзер

Такая защита от копирования ни только в FF не работает, но и в любом другом браузере она не работает, так как если захотят скопировать что-то, откроют исходный код страницы вписав в окне браузера перед ссылкой "view-source:" и скопируют всё что нужно. Так что не страдайте хернёй и не грузите сайт лишним js'ом. ИМХО

ZeN41k
97

ZeN41k - 28 сентября 2016 15:34 - Юзер

Если вы знаете как обходить эту защиту - это не значит, что её знают все. Обычно копируют чужой контент тупые вебмастеры, из которых большая часть вряд ли будет знать как обходить защиту. Умные как раз таки не воруют в большинстве случаев.

irrwisch
49

408 | 160

irrwisch - 28 сентября 2016 15:51 - Юзер

Как обойти данную защиту знает каждый школьник, эта защита поможет только от пенсионеров, которые знают только как включить компьютер, зайти в одноклассники и как правильно выключить компьютер. Вот Вам банальный пример "защищённой" галереи, а вот оригинал данного изображения. Как по мне лучшая защита от "тупых" вебмастеров это водяные знаки (watermark) на изображениях и ссылка на сайт в буфер обмена при копировании.

ZeN41k
97

ZeN41k - 28 сентября 2016 15:56 - Юзер

Вы заблуждаетесь! Защита от нажатия правой кнопки мыши и выделения лишним не будет.

ZeN41k
97

ZeN41k - 28 сентября 2016 15:59 - Юзер

else if (typeof target.style.MozUserSelect!="undefined")
target.style.MozUserSelect="none"

по идее вот эта строчка нужна мне, но как её встроить?

Pringles
7

121 | 36

Pringles - 28 сентября 2016 16:49 - Юзер

Банально на css
* {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
  }

ZeN41k
97

ZeN41k - 28 сентября 2016 17:00 - Юзер

невалидный код( а можно в скрипт встроить?

Pringles
7

121 | 36

Pringles - 28 сентября 2016 17:57 - Юзер

Смешно...)

Апельсин
3

355 | 85

Апельсин - 28 сентября 2016 17:39 - Юзер

Ответ на вопрос не верный. Всё отлично работает.

http://prntscr.com/cne1fq

irrwisch
49

408 | 160

irrwisch - 28 сентября 2016 17:56 - Юзер

Забирайте, скрипт рабочий, проверить можно тут же. Скрипт НЕ блокирует правую кнопку мыши (что позволяет людям открывать к примеру фильмы в новых вкладках), но при этом ничего из текстов выделить нельзя, так же отключены комбинации клавиш ctrl+a, ctrl+c, ctrl+x (за исключением когда курсор мыши находится в текстовом поле)

ZeN41k
97

ZeN41k - 28 сентября 2016 18:33 - Юзер

хотелось бы, чтобы правая кнопка не работала, не уже ли нельзя связать этот скрипт:
<script type="text/javascript">
document.ondragstart = noselect;
document.onselectstart = noselect;
document.oncontextmenu = noselect;
function noselect() {return false;}
</script>

С ЭТИМ:
<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>

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы