Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.01.2018, 19:43
Аспирант
Отправить личное сообщение для Frost56ru Посмотреть профиль Найти все сообщения от Frost56ru
 
Регистрация: 19.03.2016
Сообщений: 42

Якоря в NavBar
Всем привет, делаю NavBar на сайте, воткнул такой код:

var menu_selector = "#navbar-list-wrap"; // Переменная должна содержать название класса или идентификатора, обертки нашего меню. 
function onScroll(){
	var scroll_top = $(document).scrollTop();
	$(menu_selector + " a").each(function(){
		var hash = $(this).attr("href");
		var target = $(hash);
		if (target.position().top <= scroll_top && target.position().top + target.outerHeight() > scroll_top) {
			$(menu_selector + " a.active").removeClass("active");
			$(this).addClass("active");
		} else {
			$(this).removeClass("active");
		}
	});
}
$(document).ready(function () {
	$(document).on("scroll", onScroll);
	$('a[href*=\\#]:not([href=\\#])').click(function(e){
		e.preventDefault();
		$(document).off("scroll");
		$(menu_selector + " a.active").removeClass("active");
		$(this).addClass("active");
		var hash = $(this).attr("href");
		var target = $(hash);
		$("html, body").animate({
		    scrollTop: target.offset().top
		}, 800, function(){
			window.location.hash = hash;
			$(document).on("scroll", onScroll);
		});
	});
});



Ссылки с конкретными href типа #home ведет на блок id="home".

Проблема в том что все ссылки с решеткой стали мотать по страницы в рандомное место и возвращать обратно, как поправить?
Ответить с цитированием
  #2 (permalink)  
Старый 30.01.2018, 19:50
Аспирант
Отправить личное сообщение для Frost56ru Посмотреть профиль Найти все сообщения от Frost56ru
 
Регистрация: 19.03.2016
Сообщений: 42

Решил, выставил $('a[href*=\\.]:not([href=\\.])').click(function(e){

Cделал перемещение не по id а по классу
Ответить с цитированием
  #3 (permalink)  
Старый 30.01.2018, 23:27
Аспирант
Отправить личное сообщение для Frost56ru Посмотреть профиль Найти все сообщения от Frost56ru
 
Регистрация: 19.03.2016
Сообщений: 42

Сказали по классу нельзя, как быть?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скролл до якоря мышкой vendetta_klein Элементы интерфейса 5 29.09.2016 11:06
Генерация кнопок в панели навигации для каждого существующего якоря malefikus13 Общие вопросы Javascript 7 12.10.2015 13:54
Верхнее мегню сайта (navbar?) Shasoft Angular.js 1 03.02.2014 16:32
Фиксированный элемент и скроллинг до якоря spo Общие вопросы Javascript 3 27.12.2012 09:43
Событие смены якоря ntro123 Events/DOM/Window 2 22.05.2011 19:50