我有几个项目,我尝试使用这两行代码来调用iFrame的url。它们在IE9 +和FF中表现不同(IE7和IE8完美地与第一行一起工作..我还没有在IE7和IE8中测试过第二行)。
有谁知道这是为什么?我想它必须做IE webkit或其他什么?但是,我不确定。
// This calls the iFrame once, but if you call it again with this command, it throws
// a null object error
window.frames["el"].location
//versus
// This seems to work the same each time.
document.getElementById("el").src
任何见解都会很酷......谢谢!
答案 0 :(得分:1)
第一种方法frames
直接访问窗口,并读取实时位置属性。它只有一个限制:当帧的原点不同时,它会失败。
第二种方法读取帧的src 属性。当框架导航时,它不会更新。因此,这个属性是不可靠的。
另一种选择是从框架的location
属性中读取contentWindow
。它与第一种方法具有相同的限制,但您不必将name
属性附加到框架。
document.getElementById("el").contentWindow.location