Подтвердить что ты не робот

Как получить текущее имя каталога в Javascript?

Я пытаюсь получить текущий каталог файла в Javascript, чтобы я мог использовать его для запуска другой функции jquery для каждой части моего сайта.

if (current_directory) = "example" {
var activeicon = ".icon_one span";
};
elseif (current_directory) = "example2" {
var activeicon = ".icon_two span";
};
else {
var activeicon = ".icon_default span";
};

$(activeicon).show();
...

Любые идеи?

4b9b3361

Ответ 1

window.location.pathname предоставит вам каталог, а также имя страницы. Затем вы можете использовать .substring() для получения каталога:

var loc = window.location.pathname;
var dir = loc.substring(0, loc.lastIndexOf('/'));

Надеюсь, это поможет!

Ответ 2

Вы можете использовать window.location.pathname.split('/');

Это создаст массив со всеми элементами между/

Ответ 3

Для и/и \:

window.location.pathname.replace(/[^\\\/]*$/, '');

Чтобы вернуться без конечной косой черты, выполните:

window.location.pathname.replace(/[\\\/][^\\\/]*$/, '');

Ответ 4

Это будет работать для фактических путей в файловой системе, если вы не говорите о строке URL.

var path = document.location.pathname;
var directory = path.substring(path.indexOf('/'), path.lastIndexOf('/'));

Ответ 6

Если вам нужен полный URL, например. http://website/basedirectory/workingdirectory/ использовать:

var location = window.location.href;
var directoryPath = location.substring(0, location.lastIndexOf("/")+1);

Если вам нужен локальный путь без домена, например. /basedirectory/workingdirectory/ использовать:

var location = window.location.pathname;
var directoryPath = location.substring(0, location.lastIndexOf("/")+1);

Если вам не нужна косая черта в конце, удалите +1 после location.lastIndexOf("/")+1.

Если вам нужно только имя текущего каталога, в котором работает script, например. workingdirectory использовать:

var location = window.location.pathname;
var path = location.substring(0, location.lastIndexOf("/"));
var directoryName = path.substring(path.lastIndexOf("/")+1);

Ответ 8

Этот однострочный файл работает:

var currentDirectory = window.location.pathname.split('/').slice(0, -1).join('/')