我有一个相当独特的问题,我试图运行一些 jquery 逻辑来临时替换页面上的文本。然后运行一些逻辑(我为我正在使用的工具截屏)。到目前为止,这很好用,问题是由于遗留代码,我需要恢复替换调用在页面上所做的更改。
关于最好的方法的任何想法?对于好奇,我目前有:
$('body').html($('body').html().replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'))
谢谢!
我有一个相当独特的问题,我试图运行一些 jquery 逻辑来临时替换页面上的文本。然后运行一些逻辑(我为我正在使用的工具截屏)。到目前为止,这很好用,问题是由于遗留代码,我需要恢复替换调用在页面上所做的更改。
关于最好的方法的任何想法?对于好奇,我目前有:
$('body').html($('body').html().replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'))
谢谢!
我会质疑你的动机和推理,但我还是会提供一个答案:
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);
不是很严重,但我必须...
location.reload();
前
var bodyHTML = document.body.innerHTML;
$('body').html(bodyHTML.replace(/[a-zA-Z0-9\\*]*@.*\\.com/g,'[replaced for screenshot]'));
后
$('body').html(bodyHTML)