Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Динамическое содержимое с якорем (https://javascript.ru/forum/dom-window/46363-dinamicheskoe-soderzhimoe-s-yakorem.html)

Aleksandr_ 07.04.2014 12:49

Динамическое содержимое с якорем
 
Подскажите пожалуйста, как правильно прописать якорь в коде, что бы при клике на ссылку сразу перейти к якорю содержимого нужной вкладки, без перезагрузки страницы.
Вот рабочий код который только перелистывает вкладки с их содержимым:

<a href="javascript: countries.expandit(0)">Вкладка 1</a>
<a href="javascript: countries.expandit(1)">Вкладка 2</a>
<a href="javascript: countries.expandit(2)">Вкладка 3</a>

<ul id="countrytabs">
<li><a href="#" rel="country1" class="selected">Вкладка 1</a></li>
<li><a href="#" rel="country2">Вкладка 2</a></li>
<li><a href="#" rel="country3">Вкладка 3</a></li>
</ul>

<div id="country1">
Содержимое вкладки 1
</div>
<div id="country2">
Содержимое вкладки 2
</div>
<div id="country3">
Содержимое вкладки 3 + якорь
</div>

<script type="text/javascript">

var countries=new ddtabcontent("countrytabs")
countries.setpersist(true)
countries.setselectedClassTarget("link") //"link" or "linkparent"
countries.init()

</script>


В javascript разбираюсь на нулевом уровне, может кто чего подскажет.
Вот код который работает почти как надо (открывает нужную вкладку и переходит к якорю этой вкладки), но с перезагрузкой страницы, а надо что бы без нее.
<a href="?countrytabs=2?#якорь">Открыть вкладку 3</a>

ksa 07.04.2014 13:34

Цитата:

Сообщение от Aleksandr_
как правильно прописать якорь в коде

Для "позиционирования по ссылке" можно использовать тот же ИД элемента...
Т.е. что-то специально "вставлять" и не нужно...

Aleksandr_ 07.04.2014 19:24

Цитата:

Сообщение от ksa (Сообщение 306553)
Для "позиционирования по ссылке" можно использовать тот же ИД элемента...
Т.е. что-то специально "вставлять" и не нужно...

А можно с этого момента по подробней.
Я конечно в этом мало понимаю, но по моему здесь должно происходить двойное событие. Например открыта вкладка №1 и Если мы нажмем на линк с id который ведет в середину содержимого другой вкладки, то ничего не происходит.

jsnb 08.04.2014 06:49

Я так понимаю речь идет про это: http://www.dynamicdrive.com/dynamici...tabcontent.htm
Тогда это никакого отношения к якорям не имеет. Там просто заменяется содержимое элемента содержимым других элементов. Хотя в принципе можно попробовать программно создавать ссылку и программно же вызывать ее клик, хотя не уверен что это сработает. Ну, или просто делать прокрутку высчитывая координаты.

ksa 08.04.2014 08:29

Цитата:

Сообщение от Aleksandr_
Например открыта вкладка №1 и Если мы нажмем на линк с id который ведет в середину содержимого другой вкладки, то ничего не происходит

Теперь у тебя еще и "вкладки"... :)
Может таки сделаешь нормальный тестовый пример? На котором можно будет что-то показать...

Aleksandr_ 08.04.2014 21:59

Спасибо ребята, разобрался уже.


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