【问题标题】:jQuery Navigation - Help NeededjQuery 导航 - 需要帮助
【发布时间】:2009-12-01 12:16:04
【问题描述】:

我正在开发一个带有相当大的手风琴风格导航的site(它不使用手风琴用户界面)。

有四个子菜单部分在单击时会打开。我突出显示了活动链接。剩下的一步是在子菜单内的页面上保持当前活动的子菜单打开。当我使用静态页面时,我可以让它保持打开状态,但在这个网站上,导航是一个包含文件,因此我需要一些帮助来制定一种动态方式来保持这些部分打开。

这是我正在使用的代码:

<script type="text/javascript">
$(function(){

$('ul#menu3 ul').hide();                
$('ul#menu3 > li > a.drop').click(function(){
$(this).parent().children('ul').toggle("slow");
   return false;
   });                      
});
</script>

基本上,我需要某种方法将类应用到活动组,以便它显示出来。任何帮助将不胜感激。

谢谢。

【问题讨论】:

    标签: jquery navigation


    【解决方案1】:

    我会把子菜单动画放在一个函数中,所以要调用子菜单,你可以在你的 a href 上使用

    onclick="showSubMenu('id')"
    

    该功能将处理滑入。然后单击需要显示子菜单的页面后,只需在页面末尾添加一个小

    <script>document.ready(function() {showSubMenu('parent-id')});</script>
    

    希望这会有所帮助。

    C

    【讨论】:

    • 嗨,克里斯,这很温暖,但是这需要对每个页面进行手动编码,并且由于页脚也是一个包含文件,所以这将不仅仅是问题。
    【解决方案2】:

    您可能需要将类作为变量或在其自身的元素上动态应用。例如

    var page = 'ul#menu3';
    

    然后使用这个变量来触发初始状态例如

    $('#ul#menu3').show();
    

    这需要在与下拉菜单相关的所有其他 javascript 之前运行

    【讨论】:

    • 嗨,Matpol,唉,#ulmenu3 当前可见。子层是故意隐藏的,我只希望它们在单击时或子菜单项是活动页面时显示。谢谢。
    • 所以将页面变量更改为您要在页面上显示的元素,因为我说这需要是动态的,并且会根据您所在的页面而改变。
    【解决方案3】:

    这就是我最终用来解决问题的方法:

    $(function(){
    $('#mainContentTabs').tabs();
    $('#subContentTabBoxes').tabs();
    $('.interior #subContent > ul > li > a.drop').click(function(){
    $(this).parent().children('ul').toggle("slow");
         return false;
    });
    
    $(window).ready(function() {
    $('li.products ul').show();
        $('li.technical ul').show();
        $('li.tips ul').show();
    $('li.quicklinks ul').show();
    });
    

    谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多