我有一个iframe,它从父页面调用一个函数。该函数是window.location,但是这不会更改url。有没有办法让iframe从父页面调用一个函数,这会导致iframe更改网址?我也有一个基本的qustion,如果我有一个iframe,并点击一个链接,让我进入一个新页面,父页面是否保持打开状态?
提前感谢您的帮助。对不起,如果我听起来像个完全白痴,我是javascript的新手。
戴夫
答案 0 :(得分:14)
window.location
不是函数,它是对象。
要做你想做的事,首先让iframe从它的父节点调用一个特殊的函数。
parent.sendMeToGoogle();
在函数中(在父级中)执行以下操作:
function sendMeToGoogle(){
document.getElementById('iframeID').src="http://google.com/";
}
答案 1 :(得分:3)
如果您真正需要更改父网址,则可以使用window.top.location.href='http://anotherURL.com'
即使它们位于不同的域中,也可以使用iframe页面。
答案 2 :(得分:0)
我假设你想在你的父页面的功能上做更多的事情;如果没有,你可以只改变iframe的url而不调用父...
关于你的第二个问题,iframe的行为就像一个ebmedded页面:你可以在iframe中浏览你想要的所有内容而不影响父级(当然除了你想要使用的javascript调用之外),但是浏览父页面,你也将失去一个iframe。 希望这是您正在寻找的解释:)