Какое последнее слово о перенаправлениях, инициируемых JavaScript?

0

Рассмотрим:

<a href="some-page.html">Go</a>

Vs:

<script>

$(function(){

  $('a').click(function(e){

    e.preventDefault();

    var self = $(this);

    window.setTimeout(function(){

      window.location = self.attr('href');

    }, 1000);
  });
});

</script>

<a href="some-page.html">Go</a>

Очевидно, что целью второго является отсрочка перенаправления (в частности, для завершения анимации). Это также отлично подходит для браузеров с отключенным JavaScript.

Но существуют ли какие-либо конкретные сценарии, когда ссылка на JavaScript будет отвергнута браузером, предотвращающим появление всплывающих окон? Если да, то какие проблемы являются браузерами? Существуют ли меры, которые вы можете предпринять, чтобы предотвратить подозрительность браузера, когда вы просто перемещаетесь по своему сайту?

Окончательный ответ или ссылка на ответ, содержащий любые сведения о том, как браузеры обрабатывают или отклоняют перенаправления страниц, были бы замечательными.

Теги:
browser
href

1 ответ

0

Но существуют ли какие-либо конкретные сценарии, когда ссылка на JavaScript будет отвергнута браузером, предотвращающим появление всплывающих окон?

Ваш код не создает всплывающее окно, но только изменяет то, что видит пользователь:

window.location = self.attr('href');

Этот код:

var newWin = window.open('..');

Подробнее об этом: window.open method

  • 0
    Хорошо. Хотя я согласен, что не могу открыть в новом окне, этот конкретный сайт отдает предпочтение определенному опыту над разочарованием веб-разработчиков, которые любят бегать по сети, открывая новые окна (я также являюсь одним из тех разработчиков). Не могли бы вы рассказать о возможном обходном пути, чтобы мое украшение jQuery обнаруживало намерение пользователей попытаться открыть новое окно? Я подозреваю, что это невозможно, но подумал, что стоит спросить ...
  • 0
    Чего вы хотите достичь на своей странице?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню