Якорная ссылка проскакивает

Iga

Гуру форума
Регистрация
12 Янв 2014
Сообщения
425
Реакции
83
На странце стоят якоря по разделам. Внутренние переходы работают нормально. Но если ссылка на якорь снаружи, то после перехода оказываешь внизу страницы.
Для просмотра ссылки Войди или Зарегистрируйся

Якоря на block-3, block-4, block-5, block-6, block-7
block-3, block-4 - ведут к цели(в хром), а block-5, block-6, block-7 проскакивают вниз.
Страничка со всеми якорями Для просмотра ссылки Войди или Зарегистрируйся

Ссылка приходит к цели, если отключить
<script src="Для просмотра ссылки Войди или Зарегистрируйся"></script>
но тогда все эффекты отваливаются естественно. Отключение остальных скриптов по-одному ни к чему не привело.

Не могу из-за этого ссылки для директа использовать!
Есть мысли?
 
Времени проверить нет, но я бы попробовал не использовать дефиз "-" в block-x, и попробовать без.
 
  • Нравится
Реакции: Iga
Скорее всего, дело в том, что сначала сайт отрисовывается большего размера, якорь кидает на какую-то координату, а потом что-то уменьшается уже после загрузки страницы. Я бы смотрел в сторону размеров картинок и все-ли они корректно спрятаны.
 
  • Нравится
Реакции: Iga
Скорее всего, дело в том, что сначала сайт отрисовывается большего размера, якорь кидает на какую-то координату, а потом что-то уменьшается уже после загрузки страницы. Я бы смотрел в сторону размеров картинок и все-ли они корректно спрятаны.
Верно, копать в эту сторону. Я удалил все галереи, якорится номально.
Если удаляю отвечающий за галерею jquery.mosaicflow.min.js, Посему понял, что этот самый js мне не нужен и переверстал без него :)
Вроде заработало в опере и хроме, но в firefox по-прежнему глючит.

Проверьте кто на чем сможет.
Для просмотра ссылки Войди или Зарегистрируйся
 
В таком случае быстрая заплатка будет:
Код:
setTimeout(function(){
  jumpto(position); //Ваша функция на якорь
}, 500);
С таймаутом можно поиграться, больше/меньше.
Сразу скажу это не самое правильное решение, а как заплатка.
По идее надо смотреть когда ваша функция срабатывает, есть возможность запустить после полной загрузки картинок.
Код:
$(window).load(function() {
    // this will fire after the entire page is loaded, including images
});
ссылка на полный ответ Для просмотра ссылки Войди или Зарегистрируйся.
 
Последнее редактирование:
  • Нравится
Реакции: Iga
Назад
Сверху