Ich habe eine HTML-Seite und ich möchte in der HTML-Seite den Namen des HTML-Dokuments über Javascript abrufen. Ist das möglich?Wie kann ich den Namen einer HTML-Seite in Javascript bekommen?
z.B. name of html document = "indexOLD.html"
Ich habe eine HTML-Seite und ich möchte in der HTML-Seite den Namen des HTML-Dokuments über Javascript abrufen. Ist das möglich?Wie kann ich den Namen einer HTML-Seite in Javascript bekommen?
z.B. name of html document = "indexOLD.html"
var path = window.location.pathname;
var page = path.split("/").pop();
console.log(page);
Dies wird nicht funktionieren, wenn ein Schrägstrich auf der URL (in Fällen, in denen das Routing einen tatsächlichen Dateinamen verschleiert) – Damon
Das ist ein weiterer Anwendungsfall @Damon, wenn das ein Problem für Sie ist, fügen Sie page.split ('#').Verschiebung(); –
Verwenden Sie window.location.pathname
, um den Pfad der URL der aktuellen Seite abzurufen.
dies bietet die volle URL, nicht der Name der Seite. – Hugolpz
Verwendung: location.pathname
alert(location.pathname);
https://developer.mozilla.org/en-US/docs/DOM/window.location
Versuchen Sie, diese
location.pathname.substring(location.pathname.lastIndexOf("/") + 1);
location.pathname gibt den Teil (Domain nicht enthalten) der Seiten-URL. Um nur den Dateinamen zu erhalten, müssen Sie ihn mit der Substring-Methode extrahieren.
Aktuelle Seite: Es ist möglich, noch kürzer zu machen. Diese einzige Zeile eleganter klingt die aktuelle Seite Dateinamen zu finden:
var fileName = location.href.split("/").slice(-1);
oder ...
var fileName = location.pathname.split("/").slice(-1)
Diese cool nav Box Link, so dass der Link zu dem aktuellen anzupassen, ist erleuchtet von einer CSS-Klasse.
JS:
$('.menu a').each(function() {
if ($(this).attr('href') == location.href.split("/").slice(-1)){ $(this).addClass('curent_page'); }
});
CSS:
a.current_page { font-size: 2em; color: red; }
Dies ist eigentlich ein Array mit nur einem Element, wenn Sie location.pathname.split ("/"). Slice (-1) direkt wie in location.pathname.split ("/") verwenden. Slice (-1) .includes ("ALT") – Dave
Dies auch funktioniert, wenn die URL mit einem /
endet:
var segments = window.location.pathname.split('/');
var toDelete = [];
for (var i = 0; i < segments.length; i++) {
if (segments[i].length < 1) {
toDelete.push(i);
}
}
for (var i = 0; i < toDelete.length; i++) {
segments.splice(i, 1);
}
var filename = segments[segments.length - 1];
console.log(filename);
window.location.pathname – user1937198
po ssible duplicate of [Holen Sie den Namen der Seitendatei aus der Adressleiste] (http://stackoverflow.com/questions/8497050/get-the-page-file-name-from-the-address-bar) – j08691