jQuery的导航所需援助(jQuery Navigation Assistance Needed)

2019-10-18 05:35发布

我有我试图修改一个基于jQuery的手风琴式的导航。

它使用此代码:

$('.interior #subContent > ul > li > a.drop').click(function(){
    $(this).parent().children('ul').toggle("slow");
    return false;
});

我需要能够保持开放的部分活动页面上。 我可以突出显示与CSS的活动链接,但可以使用一些好的建议对于保持开放的活动部分。

导航如下:

<ul>
    <li><a href="#" class="drop">Products</a>
      <ul>
        <li><a href="printing-newproducts.html">New Products</a></li>
        <li><a href="printing-inksystems.html">Ink Systems</a></li>
        <li><a href="printing-specialtyinks.html">Specialty Inks</a></li>
        <li><a href="printing-environmentalinks.html">Environmental Inks</a></li>
        <li><a href="printing-whiteplastisolinks.html">White Plastisol Inks</a></li>
        <li><a href="printing-plastisolbases.html">Plastisol Bases</a></li>
        <li><a href="printing-plastisolinkseries.html">Plastisol Ink Series</a></li>
        <li><a href="printing-pvcfreewaterbase.html">Non-PVC Water-Based
            System</a></li>
        <li><a href="printing-modifersadditives.html">Modifiers &amp; Additives</a></li>
        <li><a href="printing-completeproductlisting.html">Complete Product
            Listing</a></li>
      </ul>
    </li>
    <li><a href="#" class="drop">Technical Information</a>
      <ul>
        <li><a href="printing-technicaldatasheets.html">Technical Data Sheets</a></li>
        <li><a href="printing-msds.html">MSDS</a></li>
        <li><a href="printing-onlinecolorcard.html">Online Color Card</a></li>
        <li><a href="printing-mixingsystemsoftware.html">Mixing System Software</a></li>
        <li><a href="printing-technicalbulletins.html">Technical Bulletins</a></li>
      </ul>
    </li>
    <li><a href="#" class="drop">Tips &amp; Techniques</a>
      <ul>
        <li><a href="printing-tradetips.html">Trade Tips</a></li>
        <li><a href="printing-galleryoftechniques.html">Gallery of Techniques</a></li>
      </ul>
    </li>
  </ul>

注:我试图与jQuery UI的手风琴这样做,但我有一个除其他事项外页面上的其他手风琴造型的冲突。

你可以看到在行动就在这里 :这是侧边栏导航。

感谢您的任何援助。

Answer 1:

我在onready它的名称或类添加到“礼”的元素让您可以指定你想要的标签,并称之为“节目()”:

<ul>
    <li name="products" ><a href="#" class="drop">Products</a>
        ...
    </li>
    <li name="technical-information"><a href="#" class="drop">Technical Information</a>
        ...
    </li>
    <li name="tips" ><a href="#" class="drop">Tips &amp; Techniques</a>
        ...
    </li>
</ul>

切换()实际上调用隐藏()/播放(),所以在onready调用显示()所需的“UL”

jQuery(window).ready(function() {

    jQuery('li[name=products] ul').show();

});


Answer 2:

遍历用户接口的,而不是对他们采取行动的质量。 如果你可以选择定UL下的有源里,然后不缩水了。

编辑:我觉得这会给你接近你想要什么,这是一个有点干编码,所以我不是100%,建议测试。

$('.interior #subContent > ul > li > a.drop').click(function(){
    $(this).parent().children('ul').each(function() {
        if ($('li.active', this).length == 0) { 
            $(this).show("slow");
        } else {
            $(this).toggle("slow"); 
        }
    });
    return false;
});


Answer 3:

我从布莱恩一些真正坚实的输入和jshali以上,我想后最终的解决方案,它制定了相当不错。

    $('.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 class="products"><a href="#" class="drop">Products</a>

作品很好的帮助表示感谢。



文章来源: jQuery Navigation Assistance Needed