Как отключить на странице клик правой кнопкой мыши с помощью JavaScript
Это делается очень легко и просто, хотя и не является панацеей. Новички часто считают, что блокируя вызов посетителями контекстного меню с помощью клика правой кнопкой мыши, они могут предотвратить кражу содержимого их веб-страницы. Но, это не совсем так. Отключение клика правой кнопки мыши легко обходится более опытными пользователями, а доступ к большей части кода страницы вообще не требует клика правой кнопкой мыши.
Доступ к контекстному меню также можно получить и с помощью клавиатуры. На клавиатуре вы можете выполнить команду клика правой кнопки мыши, удерживая клавишу Shift и нажав клавишу F10
.
Отключаем правый клик на странице с помощью JavaScript
Если вам действительно нужно отключить щелчок правой кнопкой мыши на странице своего сайта, вы можете использовать очень простой JavaScript, который блокирует доступ к контекстному меню (не только с помощью правой кнопки мыши, но и с клавиатуры).
Вот код, который для этого вам нужно добавить на страницу:
<body oncontextmenu="return false;">
Добавление только этого небольшого фрагмента кода в тег body
вашей веб-страницы заблокирует доступ ваших посетителей к вызову контекстного меню (которое вызывается кликом правой кнопки мыши).
Ограничения данного способа
Данный скрипт работает не во всех браузерах (например, Opera игнорирует его).
Этот сценарий также никак не ограничит доступ пользователям к исходному коду страницы, который можно вызвать в браузере кнопкой F12
или сочетанием клавиш Ctrl+U
.
Кроме этого есть довольно много способов обойти это ограничение, что приводит только к тому, что вы будете раздражать посетителей своего сайта.
И, наконец, хотя вы можете отключить доступ к контекстному меню, этот доступ может быть легко повторно включен пользователями, которые просто откроют в браузере консоль (F12
) и добавят следующий код:
window.oncontextmenu = null;
Или другой код, если скрипт прикреплен к отдельным элементам (как в нашем случае к тегу body
). Добавьте этот код в консоль браузера, и вы удалите ограничения для каждого из элементов на странице:
var elements = document.getElementsByTagName("*"); for(var id = 0; id < elements.length; ++id) { elements[id].oncontextmenu = null; }
Вот и все! Из сегодняшней практической статьи вы узнали не только то, как можно заблокировать клик правой кнопкой мыши на странице сайта, но также и то, как данное ограничение можно обойти.
Спасибо, что читаете нас!