antonlavrinenko
@antonlavrinenko

Как сделать проверку ссылки после хэш(#) на js?

На lp есть сортировка товаров на плагине MixItUp(на js). Есть кусок кода для активации определенного фильтра при переходе по ссылке с якорем с внешнего сайта. Сам якорь содержит название фильтра
Если же перейти на сайт с использованием любой другой якорной ссылке(любой, которая не является названием фильтра) то не выбирается не один фильтр и блок остается пустым.

Подскажите как можно выполнить условие:
если часть текста идущая после # в ссылке окна браузера == фильтр1 || фильтр2|| ... || филтр 5, то активируется фильтр которому она равна,
иначе активируется фильтр "Все товары"

$(function(){
	// check if there is a url hash, and if so, 
	// save it as a variable and prepend a '.' to the start - e.g. '.blue'
	// else, set variable as the default "all"

	var filterOnLoad = window.location.hash ? '.'+(window.location.hash).replace('#','') : 'all';

	// Send variable to MixItUp on instantiation:
	
		 $('#Container').mixItUp({
		load: {
			filter: filterOnLoad,
		},
		});
	});
  • Вопрос задан
  • 1283 просмотра
Решения вопроса 1
Stalker_RED
@Stalker_RED
//например так
switch (location.hash) {
    case '#phone':
        filter = 4;
        break;
    case '#notebook':
        filter = 7;
        break;
    case '#toys':
        filter = 135;
        break;
    default:
	    filter = 0;
	    location.hash = '#default_anchor'
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы