親ページに、非表示のiframeに1つのdivIDが含まれている場合にのみ変更される要素があります。
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が読み込まれると、親ページでこれらの変更を行う必要があります。