嘿,我的朋友和我剛接觸javascript並遇到一些代碼問題。 目前我們正試圖通過檢測按鍵來檢測用戶在特定Google文檔上工作的時間和數量。Chrome擴展程序:在Google文檔中檢測按鍵問題
我們當前的方法涉及到創建一個'按鍵'事件監聽器。我們將其放入可在任何docs.google網頁上運行的content.js文件。事情是,它在你編輯標題/其他內容的頁面上工作,但由於某種原因,當用戶實際編輯文檔時,它不會註冊。我們在其他網站上嘗試過它,並將其添加到background.js中不起作用。
var handler = function (e) {
handler.data.push(e);
console.log("success");
console.log(handler.data);
}
handler.data = [];
window.addEventListener("keydown", handler);
document.addEventListener("keydown", handler);
因此,我們試圖改變對谷歌的文檔文件的「IFRAME」的權限,這樣我們就可以使用內容腳本,但它仍然沒有工作(這裏的代碼)
var divs = document.getElementsByTagName("iframe");
for(var i = 0; i < divs.length; i++){
divs[i].sandbox = 'allow-scripts'
divs[i].addEventListener('keydown', handler, true);
任何幫助表示讚賞
我們嘗試編輯我們的代碼(http://imgur.com/a/wWNqS),但我們仍然收到錯誤消息(http://imgur.com/a/9KbbR) –
謝謝;你只是保存了我們的夜晚 –
這是一個非常好的答案(一如既往),不幸的是,它現在似乎不適合我。從devtools中的'getEventListeners(document)[「keydown」];''我認爲GDocs頁面實際上是在移除事件監聽器時 - 當我在'doc_start'創建監聽器時存在監聽器,但是一旦我們過去'負載',他們走了。 –