HTML in JAVASCRIPT umwandeln
P@TR!CK
- javascript
Hallihallo ihr Lieben,
ich habe eine Frage und hoffe dass ihr mir helfen könnt:
Zuerst müsstet ihr euch folgendes anschauen: Homepage-Total.de - Menü in Javascript.
Dort ist das erste Beispiel ja als Javascript angegeben. Die Links sind in der Datei menue.js in JS konvertiert. Kann und wie kann ich die HTML-Codes (wie bgcolor und so) in JS umwandeln?
Ich freue mich auf eure Antwort,
LG P@TR!CK
Zuerst müsstet ihr euch folgendes anschauen: Homepage-Total.de - Menü in Javascript.
Kannst du uns bitte nächstes mal vorwarnen? Das dort beschriebene ist eine Katastrophe :)
Dort ist das erste Beispiel ja als Javascript angegeben. Die Links sind in der Datei menue.js in JS konvertiert. Kann und wie kann ich die HTML-Codes (wie bgcolor und so) in JS umwandeln?
Indem du sie Kontextgerecht behandelst - in einem JavaScript-String der durch Single-Quotes Begrenzt ist, müssen diese auch Maskiert werden (und umgekehrt für Double-Quotes) - sonst fällt mir spontan nichts ein.
Die Frage ist, warum man das wollen sollte? Du vernichtest sämtliche Information (für clients ohne JavaScript-Unterstützung) und gewinnst dadurch genau garnichts.
Wenn du beschreibst, was du eigentlich genau machen möchtest, kann man dir ggf. fix weiterhelfen.
Zuerst müsstet ihr euch folgendes anschauen: Homepage-Total.de - Menü in Javascript.
Dort ist das erste Beispiel ja als Javascript angegeben. Die Links sind in der Datei menue.js in JS konvertiert. Kann und wie kann ich die HTML-Codes (wie bgcolor und so) in JS umwandeln?
Und wozu brauchst du dortigen Web-Schrott?
Du willst das doch nicht etwa nachahmen?
Du siehst, dass dort ganz einfach HTML via document.write geschrieben wird.
Also notiere den Schrott als HTML und fertig.
mfg Beat
Dort ist das erste Beispiel ja als Javascript angegeben. Die Links sind in der Datei menue.js in JS konvertiert. Kann und wie kann ich die HTML-Codes (wie bgcolor und so) in JS umwandeln?
Du kannst einfach den bestehenden Code dort ändern schreiben, darfst nur nicht das einfache Anführungszeichen verwenden, die den Code begrenzen.
Sinniger wäre es natürlich, das Aussehen des Menüs komplett über CSS zu regeln. D.h. du vergibst IDs und Klassen und formatierst diese und deren Kindelemente im Stylesheet. Das Attribut bgcolor gibt es ohnehin nur bei ein paar Elementen, die CSS-Eigenschaft background-color kannst du bei vielen setzen.
Im Übrigen ist es eine schlechte Idee, ein Menü mittels JavaScript in eine Website einzubinden, denn JavaScript steht nicht in jedem Fall zur Verfügung (z.B. sehen Suchmaschinen-Robots das Menü nicht). Verwende besser die dort vorgestellten PHP-Includes, die funktioniert auch ohne JavaScript-Unterstützung.
Mathias
Ersteinmal herzlichen Dank für eure schnellen Antworten.
Ich habe mir das überlegt und eingesehen, dass ihr Recht habt. Mit JS bringt es wirklich nichts. Aber bei dem PHP Beispiel ist ja auch nur eine Tabelle angegeben und nicht wirklich ein PHP-Code (Ein Blick in' Quelltext). Und wenn ich das Beispiel downloade, dann kommen Firefox und IE nicht mit dem PHP-Include-Befehl klar.
Ich hoffe auf eure Hilfe!
LG P@TR!CK
Und wenn ich das Beispiel downloade, dann kommen Firefox und IE nicht mit dem PHP-Include-Befehl klar.
Der PHP-Code muss erstmal durch einen PHP-Interpreter :)
Aber bei dem PHP Beispiel ist ja auch nur eine Tabelle angegeben und nicht wirklich ein PHP-Code (Ein Blick in' Quelltext).
Das ist ganz klar, weil das Menü schon serverseitig in die Seite eingebaut wird!
Und wenn ich das Beispiel downloade, dann kommen Firefox und IE nicht mit dem PHP-Include-Befehl klar.
JavaScript läuft im Browser, nachdem das Dokument vom Webserver übertragen wurde.
PHP läuft auf dem Webserver und baut das Dokument zusammen, das anschließend nach Ablauf des PHP-Scriptes zum Webbrowser geschickt wird.
Der Include-Befehl <?php include("menue.php") ?> kann also nur serverseitig ausgeführt werden. Kein Browser wird ihn beachten, wenn du das HTML-Dokument lokal ansiehst (bzw. wenn du dir das Beispiel herunterlädst und ansiehst, ist das Menü schon eingebunden). Dazu brauchst du schon einen PHP-fähigen Webspace, auf den du Datei mit der Endung .php hochlädst. Dann werden PHP-Befehle darin ausgeführt und du kannst das Menü dynamisch einbinden.
Mathias
OK, dies habe ich verstanden. Kann ich mit dem PH-Include-Befehl denn auch *htm-Dateien einbinden? Also so <?php include("menue.htm") ?>
?
Ich freue mich auf Eure Antwort,
LG P@TR!CK
OK, dies habe ich verstanden. Kann ich mit dem PH-Include-Befehl denn auch *htm-Dateien einbinden? Also so
<?php include("menue.htm") ?>
?
Dafür solltest du readfile() verwenden.
Dafür solltest du readfile() verwenden.
OK, ehm da ich mich mit PHP nicht so gut auskenne, könnten Sie mir vielleicht den Befehl schicken?
Ich freue mich auf Ihre Antwort,
LG P@TR!CK
OK, ehm da ich mich mit PHP nicht so gut auskenne, könnten Sie mir vielleicht den Befehl schicken?
Die konkrete Funktion ist doch schon verlinkt :) Wie molily schon sagt, ist aber eben zur Ausführung des Scripts oder der Funktion ein PHP-Interpreter notwendig.
Übrigens ist es nicht notwendig, mich mit "Sie" anzureden - so heikel bin ich nicht.
Danke danke, ich hasb jetzt mittlerweile verstanden ;-).
Gut, dann hat sich das damit erledigt. Allen Helfern nochmal vielen Dank.
LG PATRICK
P.S.: Wenn ich mit einem privat rede, kommt das "Sie" bei mir automatisch ;-).
Obwohl, eine Frage wäre da noch:
Ich hatte letztens hier schon einmal gefragt, wie ich es schaffe, JS so zu programmieren, dass die aktuelle Stunde überprüft wird etc..
Kann ich in JS denn als "dann-"Befehl einen Code einbauen, der anch der Überprüfung direkt auf eine andere Seite wechselt (also wie PopUps)?
Ich freu mich auf Eure Antwort,
LG Patrick
Hi,
Ich hatte letztens hier schon einmal gefragt, wie ich es schaffe, JS so zu programmieren, dass die aktuelle Stunde überprüft wird etc..
http://de.selfhtml.org/javascript/objekte/date.htm
Kann ich in JS denn als "dann-"Befehl einen Code einbauen, der anch der Überprüfung direkt auf eine andere Seite wechselt (also wie PopUps)?
Ja, location.href eine neue Adresse zuweisen bspw.
MfG ChrisB
OK, dies habe ich verstanden. Kann ich mit dem PH-Include-Befehl denn auch *htm-Dateien einbinden? Also so
<?php include("menue.htm") ?>
?
Ja.
Der PHP-Interpreter führt PHP-Befehle in dieser Datei innerhalb von <?php ... ?> auszuführen, wenn er keine findet, dann ist es auch gut - es müssen keine darin sein, die Datei muss nicht auf .php enden und der HTML-Code muss auch nicht in echo-Anweisungen untergebracht werden, wie es im verlinkten Beispiel der Fall ist.
Mathias
Danke für die Antwort. Kann ich denn dann schon die Seite mit Menü und Inhalt lokal betrachten oder dann auch erst im Netz?
LG PATRICK
Danke für die Antwort. Kann ich denn dann schon die Seite mit Menü und Inhalt lokal betrachten oder dann auch erst im Netz?
Direkt im Browser gehts wie gesagt nicht.
Man kann sich aber auf dem lokalen Rechner einen Webserver samt PHP-Interpreter installieren und dann unter http://localhost/ die Seite anschauen.
So macht man das standardmäßig, wenn man Webseiten mit serverseitigen Sprachen entwickelt.
Ein Softare-Paket bestehend aus Webserver (Apache), PHP und optional der Datenbank MySQL kann man über XAMPP installieren.
Das bringt aber einigen Aufwand mit sich und bedarf Einarbeitungszeit. Für den Anfang, solange du nur ein paar PHP-Includes machst, müsste es daher reichen, die Dateien immer per FTP auf den Webserver m Netz hochzuladen und die Seite mit Menü darüber zu testen.
Mathias