如何在选择子项时突出显示父项

时间:2012-07-02 21:43:33

标签: jquery wordpress

我是javascript和jQuery的新手,我似乎无法自己解决这个问题。

此代码位于一个空白的wordpress“启动器”模板中,可在此处查看:http://jsfiddle.net/AyStc/13/

(注意:我添加了那些令人讨厌的颜色来对比白色背景。它们不是网站上的颜色!)

我无法弄清楚这两件事:

  1. 当光标移动到其下方的子项时,使父项的背景保持蓝色。

  2. 当有人点击子项目并转到该页面时,父项目文本会保持突出显示,以指示用户所在站点的哪个部分。

  3. 我一直在阅读jQuery中的.closest(),但我似乎无法让它像这样工作。

    感谢任何指导!

1 个答案:

答案 0 :(得分:3)

一种方法是找到父母,然后找到孩子,然后过滤掉你需要的孩子。类似的东西:

$("#navi ul.menu li").hover(function() {
    $(this).find('ul.sub-menu')
        .stop(true, true).delay(50).animate({ "height": "show", "opacity": "show" }, 500 ).parent().children('a:first').css('background-color','blue');
}, function(){
    $(this).find('ul.sub-menu')
        .stop(true, true).delay(50).animate({ "height": "hide", "opacity": "hide" }, 200 ).parent().children('a:first').css('background-color','yellow');
});

或者,.prev('a')做同样的事情,如果你知道父X总是在子菜单之前。