Dies ist wie ein Ersatz für SCRIPT_NAME von PHP mit JavaScript.
location.href.split('/').pop();
Zum Beispiel mit dieser URL
https://css-tricks.de/examples/ScriptName/index.php
Dieser Code
document.write( location.href.split('/').pop() );
Würde auf die Seite schreiben: „index.php“
Es gibt ein erhebliches Problem mit diesem Schnipsel
Wenn Sie die Beispielseite ändern in
https://css-tricks.de/examples/ScriptName/
Sie werden sehen, dass NICHTS zurückgegeben wird. Wenn Sie also Code schreiben, der darauf angewiesen ist, dass „index.php“ zurückgegeben wird, wird Ihr Code nicht ausgeführt.
Das stimmt. Es wäre nur wirklich nützlich, wenn Sie eine Webanwendung betreiben würden, die URLs streng erzwingt, sodass keine Möglichkeit besteht, dass mehrere URLs denselben Ort erreichen.
Gibt es eine Umgehungslösung?
Tatsächlich wird jede .httaccess URL-Rewrite dazu führen, dass dieser Schnipsel nicht funktioniert. Die häufigste URL-Rewrite ist das Löschen von index.php oder index.html.
Es funktioniert für https://css-tricks.de/examples/ScriptName/index.php, aber URLs werden oft so umgeschrieben
https://css-tricks.de/examples/ScriptName/Und im „schlimmsten“ Fall gibt es sogar Argumente und Verweise auf HTML-Elemente
https://css-tricks.de/examples/ScriptName/?arg=value#myDivEs gibt KEINE Möglichkeit, wirklich zu wissen, welche Seite am Server **wirklich** angefordert wurde, da die URL-Rewrite **serverseitig** und JavaScript **clientseitig** ist. Wenn Sie jedoch von einem sehr gängigen Server mit gängiger URL-Rewrite ausgehen, können Sie sagen, dass eine URL, die mit „/“ endet, wahrscheinlich eine Seite namens index.php ist.
Hier ist ein Code, der für all diese URLs (einschließlich der ursprünglichen) funktioniert
Beachten Sie einfach, dass es nicht selten vorkommt, dass die URL nicht widerspiegelt, welches Skript serverseitig ausgeführt wurde.
Chris, gibt es eine Möglichkeit, mehr als 2 Skripte auf einer Seite zu haben? Ich hatte eine Akkordeon-Rotation und ein Dropdown
Apple-Stil Navigationsleiste, beide funktionierten
aber ich hatte keine Seiten-Scrollleiste, sodass ich den Inhalt nicht sehen konnte. Ich lerne das jetzt ungefähr eine Woche
daher bin ich kein Experte für JavaScript. Wie gehe ich also vor? Ich erstelle die meisten meiner Websites in Dreamweaver
also speichere ich nach meinem Mock-up als Vorlage.
Ist es immer noch möglich, mehr Skripte einzufügen?
Gibt es einen Hack? Weiß nicht, was ich tun soll. Danke
Es werden auch Anfrageargumente und der Hash wie
inde.php?s=products#data-tab
Kunst
Wo ist das Tutorial???
Dies ist ein alter Link, der ein Update benötigt? Hey Chris, vielen Dank für deine harte Arbeit, ich habe viele deiner Tipps genutzt.
Funktioniert das auf WordPress-Seiten? Und was ist die Funktion des Tipps?