- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Нужно, чтобы при нажатии на ссылку с якорем (навигация по странице) проматывалось до якоря.
При этом URL имел бы вид:
site.ru/page.html без #div1
Нашел вот такой код
HTML:
JavaScript/JQuery:
Взят отсюда: http://qaru.site/questions/307995/scroll-with-anchor-without-in-url
Работает как надо, но тогда все обычные ссылки на другие страницы не нажимаются.
Как сделать, чтобы обычные ссылки работали?
Как сделать, чтобы обычные ссылки работали?
Как-то так
Sitealert, ivan-lev, на мой взгляд лучше class добавить к таким ссылкам и обрабатывать событие клик именно на элементе с классом
Благодарю, оба варианта сработали как надо.
лучше class добавить к таким ссылкам и обрабатывать событие клик именно на элементе с классом
Лучшее, говорят, враг хорошего.. )
Если, к примеру, "якоря" в статье (а-ля содержание) указываются в WYSIWYG-редакторе админки, то автор (а если они ещё и меняются..) может банально забыть класс добавить.
p.s. Для аргументированных рассуждений на тему производительности vs удобство предлагаю: https://jsfiddle.net/wo9pfk8v/
Для 10k обращений при наличии 1000 ссылок на странице.
By regexp: 4989 ms
Не скажу, что класс намного быстрее.
Если у ссылок убрать #якоря:
By regexp: 1703 ms
Если не совпадает класс и в ссылках нет якоря:
By regexp: 1436 ms
* для последнего варианта получается 0,15ms (vs 0,035) на далеко не последнем компьютере.. Насколько это соизмеримо, к примеру, со временем загрузки JQuery.. или с расходами на выпадающие менюшки/слайдеры и прочее.. решать
ivan-lev, вопрос не в скорости, а в избежании ошибочного срабатывания если у внешней ссылки есть якорь ;)
а в избежании ошибочного срабатывания если у внешней ссылки есть якорь
Cработает, только если href у ссылки ^начинается с # ;)