PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : load local html 2 var?


anakin87
2012-11-29, 11:26:07
Hallo Leute,

ganz einfaches Problem, aber ich komm heut nicht drauf....

Ich würde gerne per Javascript/AJAX/JQuery.... eine lokale HTML-Datei laden
in den Head etwas injecten und im Browser als eigenes Frame anzeigen.
(ganz kleine mini Webanwendung ohne Server usw., alles lokal und im Browser)

So gehts anscheinend nicht:

var url1="htmlDateiname"
var hinject="neuer head mit css"

var htmlLoad = document.getElementsByName(url1);
var newHtml=htmlLoad.replace("</head>",hinject+"</head>");
parrent.FrameName.location.href = newHtml;


Nur das DOM ist dann undefined, wenn ich es mir per alert ausgeben lasse :(

aus Stackoverflow hab ich das, aber ich verstehe den Ablauf nicht...

var htmlLoad = (function func1(){
var result;
$.ajax({
type: "GET",
url: url1,
async: false,
success: function(data){result=data;}
});
retrun result;

anakin87
2012-11-29, 16:51:33
ok ich hab die Lösung - ich poste es mal vielleicht hilft es jemanden....

var contents;
var inject="css header injection";

$.get(htmlDatei, function(data){
contents = $("<div/>").html($(data).contents()).html().replace("</head>",inject);
});

//wenn jquery zu langsam ist ein delay einbauen
parent.Status.location.href="empty.html"
window.setTimeout(write2Frame,50);

function write2Frame(){
parent.FrameName.document.write(contents);
}