orientierung js | ajax | imagepreload
carsten schlichting
- javascript
Hi
also ich habe meine erste Seite ins Netz gestellt: plus-pol.com
bin aber noch etwas unzufrieden mit dem Seitenaufbau und wollte fragen, ob mir jemand Tips und Anregungen geben kann.
Also die Seite besteht aus einer xml datei, die ich auf dem server mit php aufbaue.
diese xml datei wird dann im browser mit einem xslt stylesheet verbunden.
Zuerst wollte ich diese Prozedur mit php machen, aber mein Provider stellt mir leider nicht das xsl modul aus Sicherheitsbedenken zur Verfügung und meinte dass die Leute so etwas manuell machen würden.
jetzt bin ich vor kurzem auf ein javascript script gestoßen, dass ich aber leider jetzt nicht mehr finde. Dort waren objekte, die ich nicht in der selfhtml js object referenz gefunden habe.
der code war glaube ich ähnlich wie: [wikipedia/ajax]
var xmlHttp = null;
// Mozilla, Opera, Safari sowie Internet Explorer 7
if (typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}
if (!xmlHttp) {
// Internet Explorer 6 und älter
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
xmlHttp = null;
}
}
}
if (xmlHttp) {
xmlHttp.open('GET', 'beispiel.xml', true);
xmlHttp.onreadystatechange = function () {
if (xmlHttp.readyState == 4) {
alert(xmlHttp.responseText);
}
};
xmlHttp.send(null);
}
aber dort wurde dann in JS eine xml datei eingelesen , ein xsl stylesheet und diese dann mit einer JS-function mit einander verbunden.
handelt es sich bei diesen ganzen Sachen um ajax ???
kennt sich hier jemand aus und kann mir so skizzenhaft schreiben, was ich alles benötige und wo ich es finde?
??
viele Grüße
carsten
Hallo Carsten!
bin aber noch etwas unzufrieden mit dem Seitenaufbau und wollte fragen, ob mir jemand Tips und Anregungen geben kann.
Wenn du uns sagst, warum du unzufrieden bist, vielleicht... - auf jeden Fall scheint mir das durch xsl entstehende Tabellenlayout unglücklich. Wie wäre es mit CSS?
Zuerst wollte ich diese Prozedur mit php machen, aber mein Provider stellt mir leider nicht das xsl modul aus Sicherheitsbedenken zur Verfügung und meinte dass die Leute so etwas manuell machen würden.
Hä? Niemand muß irgendwas manuell machen. Die xsl Transformation findet clientseitig durch den Browser statt. Und das ist gut so.
[SNIPP- Dein geposteter AJAX code... -SNIPP]
aber dort wurde dann in JS eine xml datei eingelesen , ein xsl stylesheet und diese dann mit einer JS-function mit einander verbunden.
handelt es sich bei diesen ganzen Sachen um ajax ???
Ja. Aber mir ist immer noch nicht klar, was das Problem ist und weswegen du AJAX einsetzen willst.
Gruß,
ritschmanhard
Hi
Wenn du uns sagst, warum du unzufrieden bist, vielleicht... - auf jeden Fall scheint mir das durch xsl entstehende Tabellenlayout unglücklich. Wie wäre es mit CSS?
wie meinst du denn dass?
ich finde Tabellen ideal fürs Layout..so kann man auschließen, dass sich Dinge überschneiden, die sich nicht überschneiden sollen - oder ?
Ja. Aber mir ist immer noch nicht klar, was das Problem ist und weswegen du AJAX einsetzen willst.
-also einmal weiß ich ja nicht genau was ajax ist und was man alles damit machen kann ... von daher kann ich das ja letztendlich nur eingeschränkt wissen... ;-)
konkret finde ich einmal nicht gut, dass der input txt aus dem xml vor dem input hintergrund erscheint, der dann auch Stückchen für Stückchen aufgebaut wird anstatt auf einmal .. hier werde ich wohl die images preloaden müssen.
auch finde ich es komisch, dass das Logo erst nach den inputs erscheint .. aber dies kann man ja eventuell auch mit einmal preload verbessern?
In welcher Reihenfolge werden eigentlich die xsltemplates verarbeitet, wenn sich der xml-Baum teilt?
--
ist es denn mit JS bzw ajax möglich das xml quasi abzufangen, mit dem xslt styleshhet zu verbinden, die bilder prezuloaden und dann alles auszugeben.
Auf jedenfall Danke für die Antwort
carsten
Hi
habe jetzt auch ein spezielles Forum für ajax gefunden:
http://wiki.ajax-community.de/
?
grüße carsten
- konkret finde ich einmal nicht gut, dass der input txt aus dem xml vor dem input hintergrund erscheint, der dann auch Stückchen für Stückchen aufgebaut wird anstatt auf einmal .. hier werde ich wohl die images preloaden müssen.
Ich habe mir deine Seite nicht angesehen, bzw, kommt bei mir nichts, aber was stört dich denn? Dass Bilder eine gewisse Zeit zum laden brauchen? Das finde ich jetzt nicht schlimm.
- auch finde ich es komisch, dass das Logo erst nach den inputs erscheint .. aber dies kann man ja eventuell auch mit einmal preload verbessern?
Damit verschiebst du aber nur alles nach hinten. Geladen müssen sie ja trotzdem werden. Und mir würde es besser gefallen, wenn nur die Bilder hinterher kommen, der rest sich aber schon aufbaut.
In welcher Reihenfolge werden eigentlich die xsltemplates verarbeitet, wenn sich der xml-Baum teilt?
Das steuerst du ja im XSL. bzw. was genau meinst du überhaupt?
ist es denn mit JS bzw ajax möglich das xml quasi abzufangen, mit dem xslt styleshhet zu verbinden, die bilder prezuloaden und dann alles auszugeben.
Auch das geht, aber du kannst das ja auch gleich mit dem XSL erledigen. Javascript kannst du auch damit generieren.
Hi
Ich habe mir deine Seite nicht angesehen, bzw, kommt bei mir nichts, aber was stört dich denn? Dass Bilder eine gewisse Zeit zum laden brauchen? Das finde ich jetzt nicht schlimm.
warum kommt denn da bei dir nichts ... ?
welchen Browser hast Du ? ich habe das mit fast allen neuen browsern getestet.
ie, firefox, safari, opera
für die browser die kein xhtml aus xml und xslt direkt aufbauen können, funktioniert es tatsächlich nicht, aber das ist mir egal. Dafür wird die Seite bei allen anderen gleich dargestellt. Ein feeling das ich früher nicht hatte und auf das ich nicht mehr verzichten möchte.
auf der anderen seite wäre es tatsächlich ein guter Grund so einen ajax frame einzubauen, weil man mit dem wohl die browserkompatibilität erhöhen würde.
In welcher Reihenfolge werden eigentlich die xsltemplates verarbeitet, wenn sich der xml-Baum teilt?
Das steuerst du ja im XSL. bzw. was genau meinst du überhaupt?
ja.. ob die stylesheets ausgehend vom xml verarbeitet werden..also
alle Knoten von oben nach unten und jeden knoten bis zu den baumspitzen.
oder vielleicht ausgehend vom xslt. Weil ja häufig xslt-stylesheets andere xslt stylesheets aufrufen.
Grüße
carsten
Hi,
für die browser die kein xhtml aus xml und xslt direkt aufbauen können, funktioniert es tatsächlich nicht, aber das ist mir egal. Dafür wird die Seite bei allen anderen gleich dargestellt. Ein feeling das ich früher nicht hatte und auf das ich nicht mehr verzichten möchte.
Wenn du erst mal mit CSS umgehen gelernt hast - dann möchtest du *darauf* nicht mehr verzichten.
Ob es jetzt „gleich dargestellt” wird oder nicht, ist in diesem Fall kein Verdienst von XML/XSLT.
auf der anderen seite wäre es tatsächlich ein guter Grund so einen ajax frame einzubauen, weil man mit dem wohl die browserkompatibilität erhöhen würde.
Im Gegenteil - damit würdest du nur die Zahl der Clients, für die das ganze überhaupt nicht nutzbar ist, signifikant erhöhen.
MfG ChrisB
warum kommt denn da bei dir nichts ... ?
welchen Browser hast Du ? ich habe das mit fast allen neuen browsern getestet.
Das www. hatte gefehlt. Jetzt gehts auch.
Dafür wird die Seite bei allen anderen gleich dargestellt. Ein feeling das ich früher nicht hatte und auf das ich nicht mehr verzichten möchte.
Mit XSL machst du aus XML auch nur HTML.
auf der anderen seite wäre es tatsächlich ein guter Grund so einen ajax frame einzubauen, weil man mit dem wohl die browserkompatibilität erhöhen würde.
Eigentlich nicht!
Hi
Das www. hatte gefehlt. Jetzt gehts auch.
aber es müßte auch ohne www. gehen!
grüße carsten
ja.. ob die stylesheets ausgehend vom xml verarbeitet werden..also
alle Knoten von oben nach unten und jeden knoten bis zu den baumspitzen.oder vielleicht ausgehend vom xslt. Weil ja häufig xslt-stylesheets andere xslt stylesheets aufrufen.
Das hatte ich als Frage übersehen.
Das wird ausgehend vom XML von oben nach unten bis zum 1. match im XSL durchlaufen. Dann wird das xslt-stylesheet abgearbeitet, vollständig.
Dann geht es im XML weiter.