Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.08.2022, 23:51
Новичок на форуме
Отправить личное сообщение для Vlad Vladyslav Посмотреть профиль Найти все сообщения от Vlad Vladyslav
 
Регистрация: 19.08.2022
Сообщений: 1

Как задать SetTimeout при переходе по ссылке
Здравствуйте, есть меню на сайте написанное на хтмл
<ul id="info" class="info">
            <li><a href="example.com"</a>Example</li>
            <li><a href="example.com">Example</a></li>
</li></ul>

Вопрос. как при переходе по разным ссылкам из меню задать время чтобы переходило не сразу а например через 2сек. Спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 20.08.2022, 00:13
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,480

Условно - так:
addEventListener('click', event => {
  event.preventDefault();

  const { href } = event.target;
  
  setTimeout(() => {
    location.href = href;
  }, 2 * 1000);
})

Всякие проверки и побочные действия сам добавишь.
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 20.08.2022, 09:41
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,692

А если пользователь клавиатурой работает?
А если кликает правой клавишей, что бы получить меню, а потом решает никуда не переходить?
А если средней клавишей, что бы гарантированно открыть в новой вкладке?

Там не просто все с переходами по ссылкам.

Последний раз редактировалось voraa, 20.08.2022 в 09:44.
Ответить с цитированием
  #4 (permalink)  
Старый 20.08.2022, 15:40
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,480

voraa,
Цитата:
Всякие проверки и побочные действия сам добавишь.

С открытием через контекстное меню конечно ничего не поделаешь, а остальное кое-как имитировать можно.
Ну и переход по ссылке по нажатию enter - триггерит onclick, так с древних времён заведено, как раз из-за тех, кто не парился за доступность.)
__________________
29375, 35
Ответить с цитированием
  #5 (permalink)  
Старый 21.08.2022, 16:36
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Можно подписаться на событие beforeunload запустить таймер и далее сделать переход
Ответить с цитированием
  #6 (permalink)  
Старый 21.08.2022, 17:52
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,480

Vlasenko Fedor, не, низя. Там очень ограничено то что ты можешь делать с этим событием.
__________________
29375, 35
Ответить с цитированием
  #7 (permalink)  
Старый 21.08.2022, 18:48
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Aetae,
да ты прав, ограничено
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранить положение скролла при переходе по ссылке Lucia14 Events/DOM/Window 1 31.12.2016 02:14
Как сделать непрерывное воспроизведение mp3 файла, при переходе на другие страницы Greatest_Duke jQuery 0 24.12.2016 14:50
Как выполнить действие при клике по ссылке? sovka Общие вопросы Javascript 2 04.02.2014 07:05
Как назначить событие при фокусе на все ссылки —сразу производить переход (по ссылке) developer Элементы интерфейса 4 27.10.2013 13:35
Двойное действие при клике по ссылке spider Элементы интерфейса 5 10.11.2009 10:43