2012-04-13 1 views
0

Я стараюсь, чтобы пользователи не использовали кнопку «Назад», это было так хорошо, пока я не попытаюсь получить контекстное меню, щелкнув правой кнопкой мыши по заголовку Chrome bar Я видел другие страницы, у которых нет таких же возможностей.Отключить контекстное меню правой кнопки мыши - по-прежнему получать его в строке заголовка Chrome

Я использовал этот код:

< script type="text/javascript"> 
     function disableBackButton() { 
      window.history.forward(1); 
     } 
     setTimeout("disableBackButton()", 0); 
     window.oncontextmenu = function() { return false } 

    </ script> 

< script type="text/javascript"> 

    if (typeof window.event != 'undefined') 
     document.onkeydown = function() { 
      if (event.srcElement.tagName.toUpperCase() != 'INPUT') 
       return (event.keyCode != 8); 
     } 
    else 
     document.onkeypress = function(e) { 
      if (e.target.nodeName.toUpperCase() != 'INPUT') 
       return false; 
     } 

</ script> 

< script type="text/javascript"> 
    document.onkeydown = chkEvent 
    var formInUse = false; 

    function chkEvent(e) { 
     var keycode; 
     if (window.event) keycode = window.event.keyCode; //*** for IE ***// 
     else if (e) keycode = e.which; //*** for Firefox ***// 
     if (keycode == 8) { 
      return false; 
     } 
    } 
</ script>  
< body onload="disableBackButton();" > 

мне кажется, что там не так много сделать, и это территория ОС, но стоит попробовать, если кто-то знает об этом

Kind Regards

George

+6

Пользователи ненавидят его, когда промахиваются своей задней кнопкой. – alex

ответ

1

Вы абсолютно НЕ МОЖЕТЕ НЕ И НЕ ДОЛЖНО делать что-либо за пределами вашей изолированной песочницы. Даже если вы случайно нашли способ в каком-то браузере сделать это, не полагайтесь на него, так как он будет рассматриваться как огромный риск для безопасности и быстро исправлен или уменьшен до какого-либо скрытого флага, активированного kludge разработчиками. Просто отбросьте идею, поскольку она полностью противостоит тому, что пытается выполнить изолированная среда браузера, поэтому она не будет работать ни в одном публичном проекте.