0

我有一个相当独特的问题,我试图运行一些 jquery 逻辑来临时替换页面上的文本。然后运行一些逻辑(我为我正在使用的工具截屏)。到目前为止,这很好用,问题是由于遗留代码,我需要恢复替换调用在页面上所做的更改。

关于最好的方法的任何想法?对于好奇,我目前有:

$('body').html($('body').html().replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'))

谢谢!

4

3 回答 3

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);
于 2013-08-23T15:53:38.733 回答
1

不是很严重,但我必须...

location.reload();
于 2013-08-23T15:55:09.280 回答
0

var bodyHTML = document.body.innerHTML;
$('body').html(bodyHTML.replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'));

$('body').html(bodyHTML)
于 2013-08-23T15:54:58.200 回答