2016-06-13 143 views
0

這是一個TamperMonkey userscript。爲什麼不打開「HELLO」?我在Ubuntu上運行Google Chrome。TamperMonkey userscript不會觸發DOMContentLoaded事件

// ==UserScript== 
 
// @name   New Userscript 
 
// @namespace http://tampermonkey.net/ 
 
// @version  0.1 
 
// @description try to take over the world! 
 
// @author  You 
 
// @match  http://*/* 
 
// @match  https://*/* 
 
// @grant  none 
 
// ==/UserScript== 
 

 
window.addEventListener("DOMContentLoaded", function(event) { 
 
    alert("HELLO"); 
 
    });

+0

['document',not'window'](https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded)。 –

+0

我剛試過,仍然無法使用。 –

+0

作爲比較的基礎,只是做'alert(「HELLO」);'工作。 –

回答

1

使用此:

// ==UserScript== 
// @name   New Userscript 
// @namespace http://tampermonkey.net/ 
// @version  0.1 
// @description try to take over the world! 
// @author  You 
// @match  http://*/* 
// @grant  none 
// ==/UserScript== 

(function() { 
    'use strict'; 

    if (document.readyState == "complete" || document.readyState == "loaded" || document.readyState == "interactive") { 
     alert("Already Loaded"); 
    } else { 
     document.addEventListener("DOMContentLoaded", function(event) { 
      alert("Just Loaded"); 
     }); 
    } 
})(); 

How to detect if DOMContentLoaded was fired借來的。

+0

Thanks,this作品。在TamperMonkey開始在頁面上運行之前,DOMContentLoaded會觸發問題嗎? –

+0

@JoshuaMeyers是正確的,因爲你應該能夠從警報文本中推斷出來。 –