Отличие href от window.location

159
01 февраля 2018, 19:45

Имеется кнопка button

<button class="btn js-goto-link" role="button" href=""
data-goto="https://site.ru" data-goto-referer="true">Вход</button>

и js-код обработчик:

activate();
function activate() {
    $(document).on("click", ".js-goto-link", gotoLinkHandler);
}
function gotoLinkHandler(e) {
    e.preventDefault();
    var href = $(this).data('goto');
    var referer = localStorage.getItem('referal');
    window.location.href = href + (referer ? "?referer=" + referer : "");
}

нужно кнопку переделать на ссылку a, чтобы в атрибуте href было значение атрибута data-goto, но и чтобы добавлялись в get-запрос параметры referer, которые в js-коде вытягиваются из localStorage.
Подскажите, как это правильно сделать?
И вообще, есть ли отличие перехода по window.location.href от атрибута ссылки href ?
P.S. может это нужно сделать с помощью php ?

Answer 1

Разница лишь в том, на кого ты передаешь ответственность на переход на новую страницу. href - Браузер (стандартный сценарий) window.location.href - Документ

В твоем коде можно поменять var href = $(this).data('goto'); на var href = $(this).attr('href');

READ ALSO
Ошибка в PHP [object Object]

Ошибка в PHP [object Object]

Помогите , мне нужно что бы вывело пароль на моём сайте , но выводит [object Object]

228
Как настроить мультимаршрут, чтобы он не строился по платным дорогам?

Как настроить мультимаршрут, чтобы он не строился по платным дорогам?

В своем приложении на API ЯндексКарт (на JavaScript) пользуюсь построением мультимаршрута (ymaps

196
Как правильно работать с сессиями в node+express?

Как правильно работать с сессиями в node+express?

Всем доброго! Решил попробовать поигратся немного с авторизацией, с помощю сессийСтолкнулся с проблемой когда заканчивается срок жизни...

143
Не получается реализовать waypoints в google map api

Не получается реализовать waypoints в google map api

Есть задача построить два маршрута от начальной точки до конечной, через промежуточныеПоскольку в JS я полный ноль, начал искать готовые решения

175