Получить текущий URL и сравнить с HREF ссылки, чтобы оставить подменю открытым - PullRequest
0 голосов
/ 01 марта 2011

У меня есть простое меню, которое скользит вниз по UL при щелчке по родительскому LI, если есть дочерний UL, которому нужно следовать ...

Я пытаюсь сделать так, чтобы, когда меню находилось в определенном каталоге, оно по умолчанию было расширено, а не закрыто. Я перепробовал несколько вещей, но просто не заставляю его работать. В настоящее время у меня есть оператор IF, сравнивающий PATHNAME с переменными и просто сообщающий этот идентификатор, чтобы сохранить UL открытым ... Это было как можно ближе.

Любые предложения о том, как сделать UL открытым, если URL страницы совпадает с родительским UL HREF?

Вы можете увидеть код здесь: http://jsfiddle.net/RvGMQ/

Спасибо!

1 Ответ

0 голосов
/ 03 марта 2011

Хорошо, у меня есть кое-что, чтобы работать здесь. Дайте мне знать, если есть лучший способ, если вы столкнетесь с этим постом ...

В итоге я создал метатег MyTitle и дал ему содержимое для сравнения идентификатора, чтобы затем отобразить UL на основе этого метатега.

    $(document).ready(function() {
    $("#menu ul ul").hide();
    $("#menu ul li").click(function()
    {
        $(this).next("ul").slideToggle(300).siblings("ul").slideUp("slow");
    });

//created a meta tag called MyTitle to use as a way to open menu when needed. This function checks for the value of MyTitle. Got this from (http://forums.macrumors.com/showthread.php?t=569947)
var mytitle;
var metas = document.getElementsByTagName('meta');
for (var x=0,y=metas.length; x<y; x++) {
  if (metas[x].name.toLowerCase() == "mytitle") {
    mytitle = metas[x];
  }
}

//Find the page currently on and display menu if need be.
var title = "" + mytitle.content;
if(title == "Resources")
    $("ul #resources").show();
if(title == "Conferences")
    $("ul #conferences").show();

и т.д ..........

...