【发布时间】:2013-09-23 10:23:29
【问题描述】:
我正在做一个网络编辑器,带有一个接收用户代码的文本区域和一个实时显示 html 的 iframe。 我有一个监听 keyup 用户的事件,这是我用来在 iframe 上执行 javascript 的代码
var iframe = $("#iframeresults").contents()
$("#wrapper").on("paste keyup", function(){
setTimeout(function(){
iframe.find("body").html(webEditor.getHtml());
iframe.find("style").html(webEditor.getCss());
iframe.find("script").remove()
var script = document.createElement("script")
script.text = webEditor.getJS()
iframe.find("head")[0].appendChild(script)
},800)
});
这很好用,但每次用户按键时我都必须删除并创建脚本标签,我的问题是,有没有另一种方法可以在不接触 dom 的情况下做到这一点?
我试过这个link
但如果我使用 eval 并且代码包含 sintax 错误,则停止
【问题讨论】:
-
你不能添加一个“执行”按钮,只在按下该按钮时执行脚本吗?
标签: javascript html dom iframe editor