使用textarea和iframe创建代码编辑区与预览区,通过JavaScript将用户输入的HTML代码写入iframe实现实时预览;2. 可扩展为HTML、CSS、JS三栏编辑,拼接后注入iframe;3. 添加sandbox属性提升安全性,结合localStorage保存代码,注意文档写入时机与跨域限制。

要在网页中添加一个可以运行 HTML 的代码框,通常用于教学、演示或开发测试,可以通过以下方法实现。这种“运行框”让用户输入 HTML、CSS 或 JavaScript 代码,并能实时预览效果。
使用 iframe 实现 HTML 运行框
最简单的方式是利用 iframe 创建一个可动态更新的预览区域。
基本思路:用两个区域,一个是代码编辑区(textarea 或 contenteditable),另一个是显示运行结果的 iframe。
示例代码:<!-- 编辑区 --><br/><textarea id="htmlCode" rows="10" cols="50"><h1>Hello World</h1><p>这是一个测试</p></textarea><br/><br><br/><button onclick="runHTML()">运行代码</button><br/><br><br/><!-- 显示运行结果 --><br/><iframe id="previewFrame" width="100%" height="300"></iframe><br/><br/><script><br/>function runHTML() {<br/> const code = document.getElementById('htmlCode').value;<br/> const iframe = document.getElementById('previewFrame');<br/> const iframeDoc = iframe.contentDocument;<br/> iframeDoc.open();<br/> iframeDoc.write(code);<br/> iframeDoc.close();<br/>}<br/></script>
立即学习“前端免费学习笔记(深入)”;
增强功能:支持 HTML、CSS、JS 分栏编辑
如果你希望分别编辑 HTML 结构、CSS 样式和 JavaScript 脚本,可以用三个 textarea,然后组合内容再写入 iframe。
关键步骤:安全与兼容性注意事项
直接执行用户输入的代码存在安全风险,尤其是包含恶意脚本时。
- 避免在生产环境随意执行未知代码
- 可设置 sandbox 属性增强 iframe 安全性,例如:
<iframe sandbox="allow-scripts"></iframe> - 考虑使用 CodeMirror、Monaco Editor 等工具提升编辑体验
集成到你的网页【设置步骤】
- 在 HTML 页面中添加文本输入区域和按钮
- 插入 iframe 用于展示运行结果
- 编写 JavaScript 函数将代码注入 iframe
- 可保存用户代码到 localStorage 实现临时记忆
基本上就这些。不复杂但容易忽略细节,比如 iframe 的文档写入时机和跨域限制。只要结构清晰,就能快速搭建一个可用的 HTML 运行框。










