-1

我有一个嵌套菜单,其中包含可切换 onclick 的内容 div。默认情况下,当页面加载时,菜单会显示所有内容 div 隐藏。我试图显示页面何时加载(没有任何点击)处于活动状态的内容 div(class="active")。这是我的 HTML:

<ul> 
 <li><h3 class="toggle_action"> Mailing Lists</h3>  // toggle trigger
  <ul class="div_toggle">  // the content div
   <li><h3 class="toggle_action"><a href="/list" class="active">Overview</a></h3></li>
   <li>...another link...</li>
  </ul>
 </li>
</ul>

这是我的 jQuery:

(function ($) {
   $(document).ready(function() {
        $(".div_toggle").slideUp();
        $(".active").Show();
        $(".toggle_action").click(function(){
            $(this).next(".div_toggle").slideToggle("slow");
        });         
    });    
  })(jQuery);

我已经搜索了几个小时,但只能找到显示/隐藏 onclick 的代码,而且我必须在页面加载时遗漏一些东西才能做到这一点。请帮我指出正确的方向!

4

2 回答 2

1

让我大吃一惊的一件事是您使用的是 $('.active').Show() ,它不是 jQuery 方法。你想要 $('.active').show()。注意小写的“S”。

此外,您没有关闭 H3 标签,而是隐藏了父元素。

具有相同逻辑的简单示例:

<div class="a">
      <div class="b">Apple</div>
      <div class="c">Pear</div>
</div>

$(function(){
  $('.a').slideUp();
  $('.b').show();

  // No matter what you will never see .b or .c.  They will always be hidden
     when .a slides up

})
于 2013-01-09T18:19:56.160 回答
-1

应该.show()不是.Show()

工作jsfiddle示例:http: //jsfiddle.net/MMdqp/

于 2013-01-09T18:20:09.170 回答