【问题标题】:Stop execute previous javascript in iframe停止在 iframe 中执行以前的 javascript
【发布时间】:2014-07-19 20:53:44
【问题描述】:

如果我点击按钮,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>");
});

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

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

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

提前致谢。

【问题讨论】:

  • 不知何故,这个问题对我来说似乎有点倒退。 iframe 的内容是否与其他内容在同一个域中并在您的控制之下?

标签: javascript jquery html iframe


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-01
    相关资源
    最近更新 更多