尝试创建一个简单的脚本,目的是在按下按钮时复制动态AJAX页面的源代码。以下代码有效:
// ==UserScript==
// @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
// @require https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant GM_addStyle
// @grant GM_setClipboard
// ==/UserScript==
function doc_keyUp(e) {
switch (e.keyCode) {
case 37:
//Left
getHTML();
break;
default:
break;
}
}
document.addEventListener('keyup', doc_keyUp, false);
function getHTML() {
waitForKeyElements ("html", copyClipboard);
function copyClipboard (jNode) {
GM_setClipboard (jNode.html());
return true;
}
}
但它有一个问题,waitForKeyElements一直处于活动状态并堵塞不必要的资源以及使剪贴板无法使用。删除“return true;”解决了这个问题,但没有帮助我,因为当我需要再次获取源代码时,页面没有重新加载。在这种情况下,waitForKeyElements不会再次触发,因为我定位的html元素保持不变,只有内部内容发生变化。
工作流:
答案 0 :(得分:0)
使用
解决document.querySelector("html").outerHTML
正如Archer在评论中所建议的那样。