N
Netzwerkidi
Hallo zusammen,
ich habe ein kleines Problem, den Inhalt eines iFrames (SOP erfüllt) zu übernehmen.
Wenn ich das Alert im folgenden Script drinlasse, dann wird der Inhalt eingelesen, und wenn das fehlt, ist kein Inhalt da. Ich vermute, das hängt damit zusammen, dass der Inhalt in dem Moment noch nicht eingelesen werden konnte, während nach einem alert genug Zeit war, ein Laufzeitproblem also.
Vielleicht hat jemand einen Tipp, wie ich das Problem lösen kann? Wenn ich ohne den iFrame auskäme, also direkt den Inhalt übernehmen könnte aus dem File, das wäre noch besser.
Im IE6 kommt immer die Fehlermeldung wie im Code, gibt es da einen workaround?
Grüße
Idi
Die Files sehen so aus:
ich habe ein kleines Problem, den Inhalt eines iFrames (SOP erfüllt) zu übernehmen.
Wenn ich das Alert im folgenden Script drinlasse, dann wird der Inhalt eingelesen, und wenn das fehlt, ist kein Inhalt da. Ich vermute, das hängt damit zusammen, dass der Inhalt in dem Moment noch nicht eingelesen werden konnte, während nach einem alert genug Zeit war, ein Laufzeitproblem also.
Vielleicht hat jemand einen Tipp, wie ich das Problem lösen kann? Wenn ich ohne den iFrame auskäme, also direkt den Inhalt übernehmen könnte aus dem File, das wäre noch besser.
Im IE6 kommt immer die Fehlermeldung wie im Code, gibt es da einen workaround?
Grüße
Idi
HTML:
<html>
<body>
<div id="myDiv">
</div>
<script type="text/javascript">
(function makeFrame() {
var arr = ['mySameOriginFile1.html', 'mySameOriginFile2.html'],
krit = 'mySameOriginFile2.html',
appStrng = "";
for (var i = 0, l = arr.length; i < l; i++) {
if (arr[i] == krit) {
appStrng += "<iframe id=\"myIFrame\" src=\"" + arr[i] + "\" frameborder=\"0\" frameborder=\"0\"></iframe>";
}
}
document.getElementById("myDiv").innerHTML = appStrng;
var ifr = document.getElementById('myIFrame');
alert(typeof ifr);
var content = ifr.contentWindow.document.getElementsByTagName('body')[0].innerHTML;
document.getElementById("myDiv").innerHTML = content;
// IE 6 msg: innerHTML ist null oder kein Objekt
})();
</script>
</body>
</html>
Die Files sehen so aus:
HTML:
<html>
<body>
<h3>mySameOriginFile1</h3>
<h4>mySameOriginFile1...</h4>
</body>
</html>
HTML:
<html>
<body>
<h3>mySameOriginFile2</h3>
<h4>mySameOriginFile2...</h4>
</body>
</html>
Zuletzt bearbeitet von einem Moderator: