我有一个相当独特的问题,我正在尝试运行一些jquery逻辑来暂时替换页面上的文本。然后运行一些逻辑(我为我正在使用的工具截取屏幕截图)。到目前为止这很好用,问题是由于遗留代码我需要恢复替换调用在页面上所做的更改。
有关最佳方法的任何想法吗? 对于好奇,我目前有:
$('body').html($('body').html().replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'))
谢谢!
答案 0 :(得分:3)
我会质疑你的动机和推理,但我会提供一个答案:
var backup_body_html = $('body').html();
$('body').html(backup_body_html.replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'));
然后:
$('body').html(backup_body_html);
(除非您需要保留事件处理程序等,在这种情况下需要克隆)
克隆方法:
var body_children = $("body").clone(true,true).children();
//other stuff (i.e. replacements)
//then:
$("body").html("");
$("body").append(body_children);
答案 1 :(得分:1)
并非完全严重,但我必须......
location.reload();
答案 2 :(得分:0)
在
var bodyHTML = document.body.innerHTML;
$('body').html(bodyHTML.replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'));
在
$('body').html(bodyHTML)