我需要使用innerHTML快速更改在每个节点上设置的值。
我找到的最接近的解决方案是:
...
Object.defineProperty(Element.prototype, 'innerHTML', {
set: function () {
// get value (ok)
var value = arguments[0];
// change it (ok)
var new_value = my_function(value);
// set it (problem)
this.innerHTML = new_value; // LOOP
}
}
...
Run Code Online (Sandbox Code Playgroud)
但这显然是一个无限循环。有没有一种方法可以调用原始的innerHTML集?
我也尝试使用代理方式,但无法使其正常工作。
更多细节:
我正在一个实验项目中,该项目使用反向代理来生成CSP策略并将其添加到网站,因此:
javascript hook metaprogramming innerhtml content-security-policy