我正在编写一个小的chrome扩展,它通过ajax调用将console.log输出重定向到http服务器。但我发现,我无法覆盖console.log函数。内容脚本(用于测试):
console.log = function() { return 0 }
它保持功能不变。
有人知道,可能是什么原因?是否有其他方式可以存档?
答案 0 :(得分:2)
内容脚本在isolated contexts中运行。您可以通过创建脚本标记并将其注入DOM来解决此问题。
var script = document.createElement("script")
script.textContent = "console.log = function() { return 0 }"
document.appendChild(script)
答案 1 :(得分:-1)
我没有足够的声誉来评论或投票,所以我只是在这里发表评论,请随时删除我的答案。
我建议你参考how can I override console.log() and append a word at the beginning of the output?。