如何在 DOM 中渲染出 Javascript console.log 的文本?
How to render out the text of a Javascript console.log in the DOM?
编辑:rlemon 帮助我到达那里。谢谢。
console.log(videoScript, 'log of script tag HTML')
var x = videoScript.outerHTML
document.getElementById('injectedScriptElement').innerText = x
我现在可以将脚本标签的日志渲染到 DOM。
我正在尝试解决我遇到的问题,我向其他人展示的最佳方式是 print/render console.log 到 DOM 以便此人可以轻松复制并粘贴 html 而无需进入控制台。
当我 console.log 创建脚本标签时,我会在控制台中看到完整的 html 脚本标签。
当我尝试使用 innerHTML 或 innerText 将其注入 DOM 时,我在 DOM 中得到以下内容:
[object HTMLScriptElement]
我也尝试过 toString() 和 JSON.stringify,但它呈现出一个空对象 {}
有什么方法可以实现我想要实现的目标吗?
在一天结束时,我可以静态添加代码,但我宁愿它来自 Javascript 本身,以向他们保证输出实际上来自 Javascript 和不是我手动添加的。
使用 Element.outerHTML 您可以获得整个脚本标签,包括字符串形式的内容。
<script>
console.log(123);
</script>
console.log( document.scripts[0].outerHTML );
将记录:
<script>
console.log(123);
</script>
编辑:rlemon 帮助我到达那里。谢谢。
console.log(videoScript, 'log of script tag HTML')
var x = videoScript.outerHTML
document.getElementById('injectedScriptElement').innerText = x
我现在可以将脚本标签的日志渲染到 DOM。
我正在尝试解决我遇到的问题,我向其他人展示的最佳方式是 print/render console.log 到 DOM 以便此人可以轻松复制并粘贴 html 而无需进入控制台。
当我 console.log 创建脚本标签时,我会在控制台中看到完整的 html 脚本标签。
当我尝试使用 innerHTML 或 innerText 将其注入 DOM 时,我在 DOM 中得到以下内容:
[object HTMLScriptElement]
我也尝试过 toString() 和 JSON.stringify,但它呈现出一个空对象 {}
有什么方法可以实现我想要实现的目标吗?
在一天结束时,我可以静态添加代码,但我宁愿它来自 Javascript 本身,以向他们保证输出实际上来自 Javascript 和不是我手动添加的。
使用 Element.outerHTML 您可以获得整个脚本标签,包括字符串形式的内容。
<script>
console.log(123);
</script>
console.log( document.scripts[0].outerHTML );
将记录:
<script>
console.log(123);
</script>