Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Как запретить скролл по якорю? (https://javascript.ru/forum/offtopic/37910-kak-zapretit-skroll-po-yakoryu.html)

megaupload 13.05.2013 18:36

Как запретить скролл по якорю?
 
Вот такой вот, казалось бы, легкий вопрос.

Пока остановился на чем-то таком, но мне кажется это быдлокодом

addEventListener('click', function(event) {
  if (event.target instanceof HTMLAnchorElement) {
    location.hash = event.target.hash;
    event.preventDefault();
  }
});

Aetae 13.05.2013 19:24

А зачем?

megaupload 13.05.2013 19:26

Цитата:

Сообщение от Aetae
А зачем?

Да не, не зачем) просто интересный квест.

А вообще например пригодится для hash навигации

danik.js 14.05.2013 07:03

Цитата:

Сообщение от megaupload
Пока остановился на чем-то таком, но мне кажется это быдлокодом

Да с чего бы быдлокод. Делает то, что по логике должно происходить. Только не нужно забывать про остальные ссылки-неякори.

megaupload 14.05.2013 11:30

Цитата:

Сообщение от danik.js
Только не нужно забывать про остальные ссылки-неякори.

ну я прост сюда весь код не пихал. Хм, это не быдлокод? не слишком ли избыточно все клики ловить и обрабатывать?

danik.js 14.05.2013 12:12

Цитата:

Сообщение от megaupload
ну я прост сюда весь код не пихал. Хм, это не быдлокод? не слишком ли избыточно все клики ловить и обрабатывать?

Ну а что мешает навешать обработчик только на якоря?

megaupload 14.05.2013 12:42

Зависимость. Добавил якорь - вешай обработчик.


Часовой пояс GMT +3, время: 01:52.