【问题标题】:dynamically change onload for an iframe动态更改 iframe 的 onload
【发布时间】:2011-10-09 13:42:03
【问题描述】:

我有一个包含几个<iframe> 标签的页面。我想动态地改变他们的加载动作。我有以下代码在 FF、Safari、Chrome、Opera 中运行良好,但 IE (8) 拒绝遵守。

document.getElementById('myiframe').onload = function() {
    return function() { file_onLoad(data); }
}();

我一直在使用类似的东西来设置<input> 元素的onchange,这在我测试过的所有浏览器(包括 IE)中都运行良好。

document.getElementById('myinput').onchange = function() {
    return function() { file_onChange(data); }
}();

所以我想这与我获取框架元素/对象的方式有关。

我也尝试过frames['myiframe'],但没有成功。

感谢您的帮助!

【问题讨论】:

    标签: javascript dom iframe onload


    【解决方案1】:

    它在我的工作正常...
    我试过了:

    function whatever(){
        document.getElementById('myiframe').src="http://www.google.com/"
        document.getElementById('myiframe').onload = function() {
            return function() { alert("Done."); }
        }();
    }
    

    它有效。 (我在 IE9 上尝试打开 IE8 模式)
    如果它不适合你,试试这个:

    document.getElementById('myiframe').addEventListener('load', file_onLoad, false); 
    
    猜你喜欢
    • 2014-01-21
    • 2016-04-14
    • 2016-06-12
    • 2012-02-28
    • 1970-01-01
    • 2023-03-21
    • 2014-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多