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

Jquery - получить URL-адрес?

Я знаю, что могу использовать window.location.pathname для возврата URL-адреса, но как я могу разобрать URL-адрес?

У меня есть URL-адрес: http://localhost/messages/mine/9889, и я пытаюсь проверить, существует ли "мой" в этом URL-адресе?

Итак, если "мой" является второй частью в этом URL-адресе, я хочу написать инструкцию if, основанную на этом...

if(second argument == 'mine') { do something }
4b9b3361

Ответ 1

if ( location.pathname.split("/")[2] == "mine" ) { do something }

Хотя, очевидно, было бы лучше проверить, есть ли в массиве достаточно элементов, возвращаемых split:

var a = location.pathname.split("/");
if ( a.length > 2 && a[2] == "mine" ) { do something }

Обратите внимание, что даже если индексы массива основаны на нулевом значении, мы хотим указать 2 как индекс, чтобы получить то, что вы называете вторым аргументом, в виде разделенных разделов "/messages/mine/9889" в массив из 4 элементов:

["", "messages", "mine", "9889"]

Ответ 2

Если параметр jquery является опцией, вы можете сделать следующее:

$.inArray("mine", window.location.pathname.split("/"))

Ответ 3

if (window.location.pathname.split("/")[2] == "mine") {
  // it exists
};

window.location.pathname - это строка в конце дня, поэтому применяются обычные методы .

Ответ 4

Даже если это очень старый запрос.. он появляется в некоторых поисках. Итак, добавьте свои заметки.. здесь

url.indexOf('mine') !== -1 

Вышеприведенное должно использоваться для проверки, чтобы найти, имеет ли url строку... где, чтобы найти путь, было бы лучше использовать

var a = document.createElement('a');
a.href = url;
console.log(a.pathname);
// if url='http://localhost/messages/mine/9889'
// output will be /messages/mine/9889

Ответ 5

Вы можете использовать функцию string.split('/') для создания массива элементов для проверки, иначе есть несколько плагинов jQuery, которые анализируют URL, например

http://projects.allmarkedup.com/jquery_url_parser/