停止在iframe中执行之前的javascript

时间:2014-07-19 07:02:14

标签: javascript jquery html iframe

如果我点击按钮,javascript会附加到iframe。

示例:

<button id="run">Click me!</button>
<textarea></textarea>

var iframe = here_is_iframe_object;

$('#run").click(function(e) {
    $(iframe).find("script[id=myScript]").remove();
    $(iframe).append("<script id='myScript'>"+ $("textarea").val() +"</script>");
});

如果我将带有警报的textarea setInterval放入示例中,然后放入简单的警报,它将同时执行带警报和新警报的setInterval。

setInterval(function() {
    alert(true);
}, 5000);

如何停止以前的javascript并仅执行新代码?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我认为我们确实需要更多关于您的代码的信息(即上下文)。 根据我的理解,此代码段按预期工作(纠正错别字时) 但要小心,我不是专家,但我认为你在eval()的情况下可能很危险:Look at this answer about using eval()

要停止setInterval()计时器,请使用clearInterval()https://developer.mozilla.org/en-US/docs/Web/API/Window.clearInterval