Перейти к публикации
IPS Invision Community
  • Запрет ПКМ и копирования


    Sipsb
     Рассказать
    Подписчики 1

    Иногда бывают такие ситуации, когда нужно запретить выделение контента с какой-либо страницы. Снизу будут представлены несколько вариантов, которые многим пригодятся. Но для подготовленного пользователя не составит труда вытащить данный материал со страницы.

    Способ №1:
    Использование JavaScript:

    <script language=JavaScript>
    document.oncontextmenu=new Function("return false;")
    </script>

    Способ №2:
    Добавление следующего в тэг <body>:

    <body oncontextmenu="return false">

    Способ №3 (запрет копирование текста):
    Также с добавлением в тэг <body>:

    <body oncontextmenu="return false" oncopy="return false;" oncontextmenu="return false" onselectstart="return false;">

    Способ №4 от @Maiden8

    Все что от Вас требуется - это разместить данный код между тегами <head></head>:

    Запрещает ПКМ и выводит сообщение:

    <script language=JavaScript>
          <!--
    var message="Правый клик запрещен!";
    ///////////////////////////////////
          function clickIE4(){
          if (event.button==2){
          alert(message);
          return false;
          }
          }
    function clickNS4(e){
          if (document.layers||document.getElementById&&!document.all){
          if (e.which==2||e.which==3){
          alert(message);
          return false;
          }
          }
          }
    if (document.layers){
          document.captureEvents(Event.MOUSEDOWN);
          document.onmousedown=clickNS4;
          }
          else if (document.all&&!document.getElementById){
          document.onmousedown=clickIE4;
          }
    document.oncontextmenu=new Function("alert(message);return false")
    // --> 
          </script>

    Второй запрещает выделение текста и сочетания Ctrl + A и Ctrl + U и Ctrl + S:

    <script>
    //запрещает выделение мышкой и комбинации клавиш Ctrl + A и Ctrl + U и Ctrl + S
    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();
      }
    
      //запрещаем выделять текст мышкой
      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) ;});
    
      //запрещаем нажатие клавищ Ctrl + A и Ctrl + U и Ctrl + S
      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 == 'U'.charCodeAt(0)) || (event.ctrlKey && key == 'A'.charCodeAt(0)) || (event.ctrlKey && key == 'S'.charCodeAt(0)))  // 'A'.charCodeAt(0) можно заменить на 65
      { removeSelection();
      if (event.preventDefault) event.preventDefault();
      else event.returnValue = false;}}
      addHandler(element, 'keydown', killCtrlA);
      addHandler(element, 'keyup', killCtrlA);
    }
    preventSelection(document);
    </script>

    Вот и все. Это бредовая затея, я в курсе, но видел пару подобных вопросов по форумным движкам. 

     Рассказать

    Отзывы пользователей

    Рекомендованные комментарии

    Нет комментариев для отображения



    Создайте аккаунт или войдите в него для комментирования

    Вы должны быть пользователем, чтобы оставить комментарий

    Создать аккаунт

    Зарегистрируйтесь для получения аккаунта. Это просто!

    Зарегистрировать аккаунт

    Войти

    Уже зарегистрированы? Войдите здесь.

    Войти сейчас

×
×
  • Создать...
Вверх