不工作是一個問題的一個非常糟糕的描述..
反正我在這裏看到的一個問題。試試這個:
// ==UserScript==
// @name test3
// @namespace test3
// @version 1
// @include *reuters.com*
// ==/UserScript==
loadDependancies(function() {
var actualHost = unsafeWindow.location.toString();
var intendedHost = "www.reuters.com";
alert("Debug 1 - " + actualHost);
if (actualHost == intendedHost) {
alert("Debug 2 - " + actualHost);
}
});
你需要使用@include
指令告訴GM腳本應該在哪裏運行。 您應該使用unsafeWindow
訪問頁面
你還需要,如果它不已經加載的jQuery的窗口對象存在的頁面:
DEBUG = true
function addScript(url){
var s = document.createElement('script');
s.src = url;
s.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(s);
}
function log(msg){
if(DEBUG){
unsafeWindow.console && unsafeWindow.console.log(msg);
}
}
function loadDependancies(boostrapFn) {
addScript('jquery CDN url goes here..');
var check = function(){
log("waiting for dependancies to load: "+ typeof unsafeWindow.jQuery);
if(typeof unsafeWindow.jQuery == 'undefined'){
window.setTimeout(check, 500);
} else {
jQuery = $ = unsafeWindow.jQuery;
boostrapFn();
}
}
check();
}
這就是你的新腳本。它會加載jQuery爲你使用
謝謝您的參與。我的意思是沒有警報觸發,我不明白爲什麼。 – derek8
你忘記了include指令。看看任何其他工作GM腳本 – mkoryak
嗯,仍然沒有提醒我。 – derek8