如何使用Greasemonkey代码替换Head脚本 [英] how to replace Head script using Greasemonkey code
本文介绍了如何使用Greasemonkey代码替换Head脚本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将"script.js"替换为"demo.js".有人请帮助我
i want to replace "script.js" to "demo.js". anyone please help me
<head>
<script src="script.js" type="text/javascript" language="javaScript"></script>
</head>
推荐答案
通过@run-at document-start
尽早运行脚本.添加事件侦听器beforescriptexecute
并检查脚本源.当您检测到所需的脚本时,请调用事件的preventDefault
方法并替换DOM中的script标签.
Run your script early by @run-at document-start
. Add an event listener beforescriptexecute
and check the script source. When you detect the desired script, call preventDefault
method of the event and replace the script tag in the DOM.
// ==UserScript==
// @name demo-scriptreplace
// @include http://example.com/*
// @version 1
// @run-at document-start
// ==/UserScript==
window.addEventListener('beforescriptexecute',
function(event)
{
var originalScript = event.target;
// debug output of full qualified script url
console.log('script detected:', originalScript.src);
// script ends with 'originalscript.js' ?
// you can test as well: '<full qualified url>' === originalScript.src
if(/\/originalscript\.js$/.test(originalScript.src))
{
var replacementScript = document.createElement('script');
replacementScript.src = 'replacementscript.js';
originalScript.parentNode.replaceChild(replacementScript, originalScript);
// prevent execution of the original script
event.preventDefault();
}
}
);
这篇关于如何使用Greasemonkey代码替换Head脚本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文