Создать заготовку основы | Create a stub for base
This commit is contained in:
37
функции|functions.js
Normal file
37
функции|functions.js
Normal file
@@ -0,0 +1,37 @@
|
||||
|
||||
задатьПараметрВСтрокеПоиска = (ключПараметра, значениеПараметра) =>
|
||||
{
|
||||
var строкаПоиска = decodeURI(window.location.search);
|
||||
var текущийАдрес = decodeURI(window.location.href);
|
||||
|
||||
// Заменить параметр.
|
||||
if (строкаПоиска.includes(`${ключПараметра}=`))
|
||||
{
|
||||
var части = строкаПоиска.split(/[\?&]/);
|
||||
for (var номер in части)
|
||||
{
|
||||
var часть = части[номер];
|
||||
if (часть.startsWith(`${ключПараметра}=`))
|
||||
{
|
||||
var значение = часть.split("=")[1];
|
||||
var адрес = текущийАдрес.replace(значение, значениеПараметра);
|
||||
history.pushState(null, "", адрес);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
// Добавить параметр.
|
||||
else
|
||||
{
|
||||
var префикс = "?";
|
||||
if (строкаПоиска.startsWith("?"))
|
||||
{
|
||||
префикс = "&";
|
||||
}
|
||||
var адрес = текущийАдрес + префикс + `${ключПараметра}=` + значениеПараметра;
|
||||
history.pushState(null, "", адрес);
|
||||
}
|
||||
};
|
||||
|
||||
setSearchQueryParameter = задатьПараметрВСтрокеПоиска;
|
||||
|
||||
Reference in New Issue
Block a user