доработка меню на jQuery, помощь со Smarty

D1
На сайте с 10.11.2010
Offline
4
754

В индексе шаблона запилена с помощью jQuery следующая конструкция - меню с кнопками и блоками ссылок(табы), отображается только один блок, остальные блоки имеют параемт hidden, при нажатие на кнопки меняется содержание меню, один таб с сылками заменяет другой.

При каждом обновление страницы, по дефолту jsскрипта отображается таб№1 с пунктами меню. очень хочется сделать так чтобы при открытие ссылки - одного из пунктов таба№2, отображался этот же таб№2. все строится на Smarty, догадываюсь что надо сравнивать адрес открытой страницы с адресами ссылок. но к сожалению совершенно не разбираюсь в Smarty, очень надеюсь на ваши советы и помощь.

//jQuery

$("#home-button").css({'background-color':'#ffeacc'});

$("#pro-button").css({opacity: 0.3});

$("#pro-button").css({'border-bottom':'1px dashed black'});

$("#menu-wrap div.button").click(function(){

$clicked = $(this);

if ($clicked.css("opacity") != "1" && $clicked.is(":not(animated)")) {

$clicked.css({'border-bottom':'0px','background-color':'#ffeacc'});

$clicked.animate({'opacity':' 1'}, 600 );

var idToLoad = $clicked.attr("id").split('-');

$("#content").find("div[class$='animated'][:visible]").fadeOut("fast", function(){

$(this).parent().find("#"+idToLoad[0]).fadeIn();

})

}

$clicked.siblings(".button").animate({'opacity': '0.5'}, 600 );

$clicked.siblings(".button").css({'border-bottom':'1px dashed black','background-color':'#f2dcb2'});

});

});

############################################

//index

<div id="menu-wrap">

<div id="home-button" class="button">для дома и офиса</div> //КНОПКА ДЛЯ ОТОБРАЖЕНИЕ 1 МЕНЮ(по умолчанию div id="home" - visible)

<div id="pro-button" class="button">профессиональные</div> //КНОПКА ДЛЯ ОТОБРАЖЕНИЕ 2 МЕНЮ (при нажатии - меню 1 - home становится hidden)

<div class="clear"></div>

<div id="content">

<div id="home" class="animated">

<div>......</div> //пункты меню

<div>......</div>

...........

</div>

<div id="pro" class="animated">

<div>......</div> //пункты меню

<div>......</div>

...........

</div>

</div>

</div>

[Удален]
#1

Для сохранения последней вкладки, мне кажется, кукисами проще воспользоваться. Посмотри здесь реализацию

D1
На сайте с 10.11.2010
Offline
4
#2

кажется додумался сам ☝

есть переменная {$smarty.get.did} которая содержит id страницы открытой. ее сравниваем с id ссылок и выставляем значение hidden или block для таба

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий