从js文件调用javascript

时间:2013-03-18 13:56:30

标签: javascript iframe

我的父页面上的元素只有在隐藏的iframe中包含一个div id时才会更改。

如果我在html页面上输入代码,那么一切都很好:

 <iframe id="myiframe" style="display:none" onload="load()" name="myiframe"   src="mysite.com"></iframe>

JavaScript的:

function load(){


if (window.frames[0].document.getElementById('applications'))
{
var str=document.getElementById("tst").innerHTML;
var n=str.replace("Login","Logout");}}
document.getElementById('tst').href='logout';

但我需要从html文件中删除iframe代码并重新定位js文件。

我在js文件中使用此代码来触发iframe:

window.onload = function(){
var link = "iframelink"
 var iframe = document.createElement('iframe');
iframe.frameBorder=0;
iframe.width="300px";
iframe.height="250px";
iframe.id="randomid";
iframe.addEventListener("load", load);
iframe.setAttribute("src", link);
document.getElementById("ad54").appendChild(iframe);
}

获取iframe的HTML代码:

<div id="ad54"</div>

Iframe启动,但是现在我在父页面上没有更改任何元素,尽管触发了iframe。加载iframe时,我需要在父页面中进行更改。

1 个答案:

答案 0 :(得分:1)

<div>个元素不会加载外部内容,因此它们永远不会触发load个事件。

iframe内容加载时,您似乎正在尝试触发事件。您需要将事件监听器附加到iframe。

iframe.addEventListener("load", load);
iframe.setAttribute("src", link);