2012-07-25 105 views
3

我想創建,從本質上講,「亭」禁用瀏覽器的快捷鍵

我有,我想在屏幕上訪問的唯一的Web應用程序。我知道chrome有一個'kiosk'模式(快捷鍵:chrome.exe --kiosk www.url.com)。這需要關注自動全屏,但禁用很少的快捷方式(可能只有f11)。

從互聯網的一些幫助,我寫了一些JavaScript,得到大部分完成的工作。代碼如下:

window.onload = function() { 
    window.document.body.onkeydown = function() { 
     if (event.ctrlKey) { 
      event.stopPropagation(); 
      event.preventDefault(); 
      try { 
       event.keyCode = 0; // this is a hack to capture ctrl+f ctrl+p etc 
      } 
      catch (event) { 

      } 
      return false; 
     } 
     return true; // for keys that weren't shortcuts (e.g. no ctrl) then the event is bubbled 
    } 
} 

這需要照顧之類的東西按Ctrl + F,按Ctrl + P等不幸的是,它不這樣禁用快捷鍵在鍵Ctrl + T,CTRL + N,F5,等

它甚至可能禁用這些,或者我在這裏追逐彩虹?我不在乎它是否是javascript,設置,但是我真的很想做而不是一個插件。

回答

3

您可以通過JavaScript禁用任何你想要的按鍵。你只需要知道他們的關鍵代碼。

+0

我看到的問題是,類似ctrl + t或ctrl + n的事件不會發送JS可以捕獲的事件 - 它看起來像是立即打開一個沒有JavaScript的新標籤頁/窗口,即使能夠做任何事情。但是你對捕捉F5是正確的:)謝謝 – Ledivin 2012-07-25 19:23:53

+0

從Chrome瀏覽器開始使用應用程序模式時,看起來你可以在非常新的Chrome版本中攔截這些內容。 – 2012-07-25 19:27:45