Недавно я переключил свой сайт на использование чистых/SEO-дружественных URL-адресов, которые теперь вызвали у меня некоторые проблемы с функцией JavaScript, которую я использовал для захвата параметров строки запроса.Получение параметров строки запроса с чистых/SEO дружественных URL-адресов с помощью JavaScript
Раньше я использую эту функцию:
function getQueryVariable(variable) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
if (pair[0] == variable) {
return pair[1];
}
}
return (false);
}
который работал отлично на такие вещи, как this, как вы могли бы просто назвать getQueryVariable("image")
и вернуть «awesome.jpg».
Я играл с функцией indexOf();
, чтобы попытаться захватить соответствующие параметры из текущего URL, например:
var url = window.location.pathname;
var isPage = url.indexOf("page") + 1;
В попытке получить индекс массива номер параметра «страницы», а затем плюс 1, чтобы перейти к значению этого (?page=name > /page/name/)
JavaScript не является моим основным языком, поэтому я не привык к работе с массивами и т. д., и моя попытка превратить это в новую функцию давала у меня головные боли.
Любые указатели?
Спасибо, это решить мою проблему прекрасно :) – MrLewk