Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   что-то типа смещения координат при переходе (https://javascript.ru/forum/jquery/48642-chto-tipa-smeshheniya-koordinat-pri-perekhode.html)

yozuul 11.07.2014 00:19

что-то типа смещения координат при переходе
 
есть паблик скрипт плавного скроллинга через меню.
меню фиксированное, которое скролит относительно выбранного пункта на 80 пикселов выше, чтобы не загораживать то что под ним находится.

на странице есть "табы", заказчик, до кучи попросил, чтобы при прямом их открытии меню тоже не загораживало контент, т.е. координаты смещались на те же 80 пикселов выше.

если я открываю этот блок http://vash-web.myjino.ru/#tab, то координаты нормальные.
если я открываю вкладку в этом блоке (1-9)
http://vash-web.myjino.ru/#tabs_2
http://vash-web.myjino.ru/#tabs_7
координаты открываются без смещения, конечно.

никак не соображу, что надо сделать. сами табы #tabs_1, #tabs_2 и тд в отличие от закладок блоков, я сместить вверх не могу, т.к. вёрстка поедет. сам скрипт скроллинга что ли править, добавив в него эти табы и смещение при их открытии?

krasovsky 11.07.2014 07:38

"При прямом открытии" ты имеешь ввиду что ли переход по ссылке?
Если так то я для подобного просто написал функцию, которая 1 раз при заходе на страницу парсит урл и если надо скроллит к нужному якорю по его коордитам минус некоторое смещение

yozuul 11.07.2014 20:19

покажите плз, что там за код. не могу примера найти

BETEPAH 11.07.2014 21:04

в одном из проектов мне подобную проблему удалось решить версткой, смещением ссылки.
Т.е. что-то типа:
<div style="position: relative">
  <a name="tab" style="position: absolute; top: -80px"></a>
  сюда скроллить
</div>

yozuul 12.07.2014 09:41

основные пункты меню смещаются точно так же, но как я закладки то смещу. вёрстка вся поедет.

BETEPAH 12.07.2014 10:20

Из-за чего поедет верстка? Вы заметили, что смещается невидимый абсолютный элемент?

yozuul 12.07.2014 10:25

из-за того, что мне смещать придётся видимый - сам пункт закладки.
http://vash-web.myjino.ru/#tabs_2
http://vash-web.myjino.ru/#tabs_7
<ul class="etabs">
 <li class='tab'><a href="#tabs_1">Йога для начинающих</a></li><li class='tab'><a href="#tabs_2">Хатха-йога основного уровня</a></li><li class='tab'><a href="#tabs_3">Утренняя йога – YOGA ENERGIZER</a></li><li class='tab'><a href="#tabs_4">Жива</a></li><li class='tab'><a href="#tabs_5">Белояр</a></li><li class='tab'><a href="#tabs_6">Винчун</a></li><li class='tab'><a href="#tabs_7">Синкагю-Ру</a></li><li class='tab'><a href="#tabs_8">Восточные танцы</a></li><li class='tab'><a href="#tabs_9">Контактная импровизация</a></li>
 </ul>

как мне их сместить, объясните, может я что-то недопонимаю.

BETEPAH 12.07.2014 10:42

А кто мешает ввести невидимый элемент?
в приведенном коде я не вижу ни одного якоря, поэтому сложно что-то сказать.

Я же не настаиваю использовать именно такое решение. Можете предложенный выше сценарий в скрипте сделать.


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