使用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><div class="aritcle_card flexRow">
<div class="artcardd flexRow">
<a class="aritcle_card_img" href="/xiazai/skill11499" title="cn-json-diff"><img
src="https://img.php.cn/upload/skill/001/246/273/6adaf20cf0281539.jpg" alt="cn-json-diff" ></a>
<div class="aritcle_card_info flexColumn">
<a href="/xiazai/skill11499" title="cn-json-diff">cn-json-diff</a>
<p>比较两个 JSON 文件并显示差异。支持嵌套结构、数组及值变更。纯 Python 标准库实现,无需 API 密钥。</p>
</div>
<a href="/xiazai/skill11499" title="cn-json-diff" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
</div>
</div><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</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。
关键步骤:- 创建三个输入框:htmlInput、cssInput、jsInput
- 拼接成完整 HTML 字符串,包括
- 写入 iframe 的 document
安全与兼容性注意事项
直接执行用户输入的代码存在安全风险,尤其是包含恶意脚本时。
- 避免在生产环境随意执行未知代码
- 可设置 sandbox 属性增强 iframe 安全性,例如:
<iframe sandbox="allow-scripts"></iframe> - 考虑使用 CodeMirror、Monaco Editor 等工具提升编辑体验
集成到你的网页【设置步骤】
- 在 HTML 页面中添加文本输入区域和按钮
- 插入 iframe 用于展示运行结果
- 编写 JavaScript 函数将代码注入 iframe
- 可保存用户代码到 localStorage 实现临时记忆
基本上就这些。不复杂但容易忽略细节,比如 iframe 的文档写入时机和跨域限制。只要结构清晰,就能快速搭建一个可用的 HTML 运行框。

















