|
|
|
| http://exsite.demo3.icop.gr/
кое-как, через одно место, добилась запоминания нажатого пункта первого уровня. а со вторым и третьим - беда. никак не получается.
вот стили:
/* left menu - categories - */
#wrap {position:relative; height:500px; width:200px; }
#nav_vert {position:absolute; left:0; top:0; border-bottom: #999 1px solid; z-index:5;}
#nav_vert, #nav_vert ul {padding:0; margin:0; list-style:none; font-family: MyriadPro, Helvetica, Verdana; background:#58585a; text-indent: 30px;}
#nav_vert ul {font-weight:bold;}
#nav_vert li a {padding-left:5px 5px ; font-weight:bold; color:#fff; text-decoration:none; display: block; width:200px; height: auto;}
#nav_vert li a:hover {text-decoration:none; background : #cccccc url(../images/linkarrow.gif) no-repeat right center;}
#nav_vert li ul li a {padding-left:0; background: #cccccc; display: block; width: 100%; height: 20px; border-bottom: #b9b9b9 1px solid; height: auto; text-indent: 30px;}
#nav_vert li ul li.p2 {padding-left:0; background: url(../images/linkarrow.gif) 10px 10px no-repeat #cccccc; display: block; width: 100%; height: auto; text-indent: 30px; border:none; }
#nav_vert .p2 li a {padding-left:0; background: #fff; display: block; width: 100%; height: auto; text-indent: 30px; border:none; color: #58585a;}
#nav_vert .p2 li a:hover {padding-left:0; background: url(../images/linkarrow.gif) right 10px no-repeat #eaeaea; display: block; width: 100%; height: auto; text-indent: 30px; border:none; }
#nav_vert li {font-size:13px; line-height:25px; color:#fff; cursor:pointer; width:100%;}
#nav_vert .p1 li.down {text-indent:2px; background: url(../images/expanded.gif) 10px 10px no-repeat; font-weight:bold; text-indent: 30px;}
#nav_vert .p2 li.down {text-indent:2px; background: url(../images/expanded.gif) 10px 10px no-repeat; font-weight:bold; text-indent: 30px;}
#nav_vert li ul li.p2 ul li {padding-left:0; background: url(../images/linkarrow.gif) right 10px no-repeat #eaeaea; display: block; width: 100%; height: auto; text-indent: 30px; border:none; }
|
вот пример меню:
<ul id="nav_vert">
<li style="border: #fff 1px solid; border-bottom: none;"><a href="#" onclick="loadGallery(1);"><b>COMPANY</b></a></li>
<li style="border: #fff 1px solid; border-bottom: none;"><a href="#" onclick="loadGallery(2);"><b>SERVICES</b></a></li>
<li class="p1 down" style="border: #fff 1px solid; border-bottom: none;">GALLERY
<ul>
<li><a href="#" onclick="loadGallery(4);">SHOPS</a></li>
<li class="p2 down">STANDS</a>
<ul>
<li><a href="#" onclick="loadGallery(6);">tailor made</a></li>
<li><a href="#" onclick="loadGallery(7);">jeans collection</a></li>
</ul>
</li>
</ul>
</li>
<li style="border: #fff 1px solid; border-bottom: none;"><a href="#" onclick="loadGallery(8);"><b>CONTACT</b></a></li>
</ul>
|
| |
|
|
|
|
|
|
|
для: elenaki
(05.11.2010 в 12:44)
| | я так понимаю вы на яваскрипте хотите запоминать? без id у вас не получится. если списков несколько, то каждый список должен содержать идентификатор группы. делаете разбор требуемых тегов по групповому идентификатору, а потом по уникальному внутри группы. разделяйте идентификаторы какими нибудь символами. например двоеточием.
<a id="id_group:id_number" href="#" onclick="loadGallery(7);">jeans collection</a>
|
| |
|
|
|
|
|
|
|
для: deimand
(06.11.2010 в 22:23)
| | id есть. не помогает
# мне не мешает. а кому-то мешает? перехода по ссылке мне не нужно, поэтому и ставлю "решетку". могу, наверно, поставить return false, только это больше места занимает... | |
|
|
|
|
|
|
|
для: elenaki
(07.11.2010 в 17:14)
| | на 0.00000500 килобайтов больше) супер логика) лучше пусть прыгает страница) | |
|
|
|
|
|
|
|
для: sl1p
(07.11.2010 в 21:23)
| | ничего у меня не прыгает. уже нашла другой скрипт. завтра буду адаптировать. пока работает... | |
|
|
|
|
|
|
|
для: elenaki
(07.11.2010 в 21:25)
| | когда ж программисты перестанут лениться и будут писать сами... | |
|
|
|
|
|
|
|
для: psychomc
(07.11.2010 в 22:35)
| | лень - двигатель прогресса. изобретать каждый раз велосипед у меня просто нет времени. | |
|
|
|
|
|
|
|
для: elenaki
(08.11.2010 в 11:40)
| | так а разве надо каждый раз? один раз | |
|
|
|
|
|
|
|
для: elenaki
(07.11.2010 в 17:14)
| |
<style>.mm{color:#000000;}</style>
<a class="mm" id="idmm,1" onclick="req('a', 'idmm', 1, function(id){cred(id)}, function(id){cblack(id)})">ссылка 11</a>
<br><a class="mm" id="idmm,2" onclick="req('a', 'idmm', 2, function(id){cred(id)}, function(id){cblack(id)})">ссылка 12</a>
<br><a class="mm" id="idmm,3" onclick="req('a', 'idmm', 3, function(id){cred(id)}, function(id){cblack(id)})">ссылка 13</a>
<br><br><a class="mm" id="idmmm,1" onclick="req('a', 'idmmm', 1, function(id){cred(id)}, function(id){cblack(id)})">ссылка 21</a>
<br><a class="mm" id="idmmm,2" onclick="req('a', 'idmmm', 2, function(id){cred(id)}, function(id){cblack(id)})">ссылка 22</a>
<br><a class="mm" id="idmmm,3" onclick="req('a', 'idmmm', 3, function(id){cred(id)}, function(id){cblack(id)})">ссылка 23</a>
<script>
function gt(obj)
{
return document.getElementsByTagName(obj);
}
function ge(id)
{
return document.getElementById(id);
}
function req(tag, name, num, f1, f2)
{
var tar = gt(tag);
for (i = 0; i < tar.length; i++)
{
var id = tar[i].id.split(',');
if (id[0] == name)
{
if (id[1] == num) f1(id); else f2(id);
}
}
}
function cblack(id)
{
ge(id).style.color = '#000000';
}
function cred(id)
{
ge(id).style.color = '#0080FF';
}
</script>
|
| |
|
|
|
|
|
|
|
для: deimand
(07.11.2010 в 22:33)
| | не впечатлило.
если вы заметили, для первого уровня меню я сделала запоминание. для последующих по тому же принципу - не получается. | |
|
|
|
|
|
|
|
для: elenaki
(05.11.2010 в 12:44)
| | elenaki, зайдите на Ваш сайт http://exsite.demo3.icop.gr/ и кликните по любому из пунктов меню.
И посмотрите на адресную строку браузера после клика: она станет у Вас такой - http://exsite.demo3.icop.gr/#
Знаете, почему? :-)
PS. По сути вопроса, увы, ничем помочь не смогу. Jquery - это не моё. | |
|
|
|
|
|
|
|
для: elenaki
(05.11.2010 в 12:44)
| | а о каком запоминании разговор? по f5 все сбрасывается | |
|
|
|
|
|
|
|
для: AlexSol
(08.11.2010 в 14:17)
| | пусть сбрасывается по f5. надо запоминать до следующего клика по какому-либо пункту меню.
чтобы всегда было видно, на какой странице находимся. похоже, уберу я Аякс и буду делать переходы по страницам. уже всю голову сломала. | |
|
|
|
|
|
|
|
для: elenaki
(08.11.2010 в 15:55)
| | так поставьте для ссылок
<a href="#" onclick="loadPage(2); cat_changeBG(0);return false;"><b>ΕΤΑΙΡΕΙΑ</b></a> | |
|
|
|
|
|
|
|
для: AlexSol
(08.11.2010 в 16:10)
| | поставила. ничего не меняется. запоминается состояние после клика только первого уровня...
надо как тут
http://demo.koolphp.net/Examples/KoolSlideMenu/Features/MultiLevels/index.php
но этот скрипт такой огромный... | |
|
|
|
|
|
|
|
для: elenaki
(08.11.2010 в 17:06)
| | кажется понял что нужно :)
$(function(){
$('#nav_vert a').click(function(){
$('#nav_vert a').removeClass('active')
$(this).addClass('active')
return false;
})
})
у нажатой ссылки будет класс "active" | |
|
|
|
|
|
|
|
для: AlexSol
(08.11.2010 в 19:44)
| | я уже сделала. не знаю как. методом научного тыка, наверно.
вообщем-то, задача выполнена, кликнутая ссылка выделена.
хорошо бы еще раскрытые пункты закрывались бы не только
по клику на родителе, а на любом пункте первого уровня. но
это выше моего понимания. | |
|
|
|