2009-12-21 39 views
1

我正在嘗試爲Google Chrome編寫擴展。我想要捕捉給定頁面上的任何鍵盤輸入,併爲它做些神奇的事情。我能夠用這些線路完成大部分我需要的功能:如何捕獲對JS中元素的所有更改的更改

document.addEventListener("keydown", function(event) { OnKeyDown(event); }, false); 
document.addEventListener("keyup", function(event) { OnKeyDown(event); }, false); 
document.addEventListener("keypress", function(event) { OnKeyPress(event); }, false);` 

這適用於大多數地方,除了Google Mail。在輸入電子郵件正文時,我沒有收到這些事件,因爲事實證明,它實際上是內的<body>元素。

+0

請注意,您的匿名功能是不需要的。 'document.addEventListener(「keydown」,OnKeyDown,false)'會在沒有額外功能的情況下以相同的方式工作。 – 2009-12-21 05:25:30

+0

謝謝,我有這種方式,因爲我有時會在那裏添加alert()或其他函數調用,以用於調試和whatnot。 – 2009-12-21 05:36:47

+0

尤金,我意識到這已經過了一歲了,但在這裏我和前一段時間在同一條船上。你是否能夠得到這個工作?請告訴我們! – 2011-05-02 00:04:40

回答

-1

如果你想創建木馬,你最好使用C++,否則,調和你的項目/任務。如果項目需要使用JavaScript攔截瀏覽器中的所有用戶輸入事件,那麼此項目完全錯誤。

+0

感謝您的信任,但實際上我正在嘗試爲Firefox創建一個ToCyrillic的東西,並且我僅限於Javascript,因爲這是Google Chrome允許的所有擴展。 – 2009-12-21 05:35:23