tompics
Registered +
- Registriert
- Jan. 2008
- Beiträge
- 32
hi,
ich möchte gerne mit einer flash-navigation inhalte in die htm-seite (mit div-tags) laden. das problem ist, dass ich nicht jedes mal die ganze seite neu laden will, sondern nur eben die fragmente. ein frameset kommt für mich nicht in frage.
es soll folgendermaßen aussehen: ich drücke einen button im swf-menü (befindet sich im div-tag "flash") und im divtag "beispiel" wird die html-datei geladen..
und wenn ich in flash
on (press) {
getURL("test.htm", this);
}
schreibe, dann wird natürlich die ganze site geladen.
wie kann ich nur einen teil laden?
habe schon gegooglet, aber noch kein ergebnis gefunden...
danke schon mal im voraus für eure vorschläge/antworten,
tompics
hab mittlerweile erhausgefunden - die lösung heißt ajax
man kann mit flash so was an java script schicken:
on (press) {
getURL("javascript:kontakt()");
}
und so sieht das javascript-ding aus:
var req_proj = false;
function projekt() {
if (window.XMLHttpRequest) {
req_proj = new XMLHttpRequest(); // Mozilla, Safari, Opera
} else if (window.ActiveXObject) {
try {
req_proj = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
} catch (e) {
try {
req_proj = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
} catch (e) {}
}
}
if (!req_proj) {
alert("Kann keine XMLHTTP-Instanz erzeugen");
return false;
} else {
//
// LADEN!!! //
//
var url = "projekt.html";
req_proj.open('post', url, true);
req_proj.send(null);
req_proj.onreadystatechange = interpretReq_proj;
}
}
function interpretReq_proj() {
switch (req_proj.readyState) {
case 4:
if (req_proj.status != 200) {
alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+req_proj.status);
} else {
var content = req_proj.responseText;
document.getElementById('content').innerHTML = content;
}
break;
default:
break;
}
}
das blöde daran ist jetzt, dass man für jeden neuen button das selbe nochmal machen muss, nur mit anderen variablen...
gibt es da einfachere möglichkeiten?
ich möchte gerne mit einer flash-navigation inhalte in die htm-seite (mit div-tags) laden. das problem ist, dass ich nicht jedes mal die ganze seite neu laden will, sondern nur eben die fragmente. ein frameset kommt für mich nicht in frage.
es soll folgendermaßen aussehen: ich drücke einen button im swf-menü (befindet sich im div-tag "flash") und im divtag "beispiel" wird die html-datei geladen..
und wenn ich in flash
on (press) {
getURL("test.htm", this);
}
schreibe, dann wird natürlich die ganze site geladen.
wie kann ich nur einen teil laden?
habe schon gegooglet, aber noch kein ergebnis gefunden...
danke schon mal im voraus für eure vorschläge/antworten,
tompics
hab mittlerweile erhausgefunden - die lösung heißt ajax
man kann mit flash so was an java script schicken:
on (press) {
getURL("javascript:kontakt()");
}
und so sieht das javascript-ding aus:
var req_proj = false;
function projekt() {
if (window.XMLHttpRequest) {
req_proj = new XMLHttpRequest(); // Mozilla, Safari, Opera
} else if (window.ActiveXObject) {
try {
req_proj = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
} catch (e) {
try {
req_proj = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
} catch (e) {}
}
}
if (!req_proj) {
alert("Kann keine XMLHTTP-Instanz erzeugen");
return false;
} else {
//
// LADEN!!! //
//
var url = "projekt.html";
req_proj.open('post', url, true);
req_proj.send(null);
req_proj.onreadystatechange = interpretReq_proj;
}
}
function interpretReq_proj() {
switch (req_proj.readyState) {
case 4:
if (req_proj.status != 200) {
alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+req_proj.status);
} else {
var content = req_proj.responseText;
document.getElementById('content').innerHTML = content;
}
break;
default:
break;
}
}
das blöde daran ist jetzt, dass man für jeden neuen button das selbe nochmal machen muss, nur mit anderen variablen...
gibt es da einfachere möglichkeiten?