Javascript 使用Greasemonkey向页面添加html内容的基本方法?
有没有一种Greasemonkey方法可以在Javascript 使用Greasemonkey向页面添加html内容的基本方法?,javascript,html,greasemonkey,tampermonkey,Javascript,Html,Greasemonkey,Tampermonkey,有没有一种Greasemonkey方法可以在标记之后或页面结束之前将基本HTML内容附加到页面末尾 我找到before/after方法,但我需要知道元素的名称,这些元素可能会随着页面的变化而变化 快速肮脏的方式:请仅对品牌-新内容使用innerHTML var newHTML = document.createElement ('div'); newHTML.innerHTML = ' \ <div id="gmSomeID">
标记之后或页面结束之前将基本HTML内容附加到页面末尾
我找到before/after方法,但我需要知道元素的名称,这些元素可能会随着页面的变化而变化 快速肮脏的方式:请仅对品牌-新内容使用
innerHTML
var newHTML = document.createElement ('div');
newHTML.innerHTML = ' \
<div id="gmSomeID"> \
<p>Some paragraph</p> \
etc. \
</div> \
';
document.body.appendChild (newHTML);
如果你不想逃避你的多行html,你可以把你的html放在本地文件中,用
GM\u getResourceText
加载。确保你有
例如:
也有效
哦,等等,这是通过在主体末尾附加新元素来实现的。尽管命名有点误导,但看起来不错<代码>=]@fabriciomatté:是的,问题的标题和文本有点矛盾。编辑以清除。在
中添加新内容是最好的默认位置。是的,当我第一次浏览这个答案时,我没有意识到newHTML
实际上是一个用作新html容器的元素,而不是一个普通html字符串,但我注意到这一点。您的答案非常清楚+1:P
您应该使用内容脚本注入,它更干净,如果您忘记对斜杠字符@baptx进行双转义,则在使用正则表达式时也可以防止错误,这是针对javascript的,在这种情况下根本不起作用。这个问题是关于HTML的。使用document.body.insertBefore(newElement,document.body.firstChild)
将一些东西放在开头
// ==UserScript==
// @name YOUR_SCRIPT_NAME
// @include http://YOUR_SERVER.COM/YOUR_PATH/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// @grant GM_addStyle
// ==/UserScript==
//--- The @grant directive is used to restore the proper sandbox.
$("body").append ( `
<div id="gmSomeID">
<p>Some paragraph</p>
etc.
</div>
` );
GM_addStyle ( " \
#gmSomeID { \
position: fixed; \
top: 0px; \
left: 0px; \
} \
" );
// ==UserScript==
// @name Tamper Test
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match file:///C:/david/sandbox/tampermonkey/tamper.html
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
// @resource html file:///C:/david/sandbox/tampermonkey/foo.html
// @resource style file:///C:/david/sandbox/tampermonkey/style.css
// @grant GM_addStyle
// @grant GM_getResourceText
// ==/UserScript==
(function() {
'use strict';
$("body").append('<div id = "dwj-tamper">new content from tamper script</div>');
GM_addStyle(GM_getResourceText("style"));
$("body").append(GM_getResourceText("html"));
})();
// @resource pastebin http://pastebin.com/raw/9WfbN24i
//...
$("body").append(GM_getResourceText("pastebin"));