【问题标题】:Add Current/Active State to Two Objects将当前/活动状态添加到两个对象
【发布时间】:2012-03-15 08:29:11
【问题描述】:

我正在尝试更改手风琴的活动状态,该手风琴在侧边栏中具有第二种导航形式来控制它。我的活动状态适用于手风琴和控制它的侧边栏按钮,但我希​​望手风琴和与其对应的按钮都具有活动状态,以便在单击其中一个或另一个时应用当前状态。 .. 这是它的当前 js 代码:

jQuery(function($){
  var headerAnchors = $('.btn a').click(function(){
    headerAnchors.removeClass('current');
    $(this).addClass('current');
  });
});

jQuery(function($){
  var headerAnchors = $('.accordion h2 a').click(function(){
    headerAnchors.removeClass('current');
    $(this).addClass('current');
  });
});

以及对应的html:

<div class="accordion">
    <section id="item1">
        <h2><a href="#item1">Item 1 Title</a></h2>
        <div>
            <p>Item 1 content</p>
        </div>
    </section>
    <section id="item2">
        <h2><a href="#accordion2">Item 2 Title</a></h2>
        <div>
            <p>Item 2 content</p>
        </div>
    </section>
</div>

<div id="sidebar-nav">
    <ul>
        <li class="btn"><a href="#item1"><img src="button1.jpg" /></a></li>
        <li class="btn"><a href="#item2"><img src="button2.jpg" /></a></li>
    </ul>
</div>

这是有问题的页面之一,以便您可以更好地了解我要完成的工作: http://64.82.220.37/CreativeCompounds/exclusive-ingredients.php

您会注意到,当单击手风琴项时,它会变为蓝色,当单击侧边栏中的按钮时,左端会变为蓝色,但我希望相应的手风琴项和按钮都变为蓝色。

【问题讨论】:

    标签: jquery jquery-events jquery-ui-accordion


    【解决方案1】:

    试试这个

    jQuery(function($){
      var headerAnchors = $('.btn a, .accordion h2 a').on('click', function() {
        $('.current').removeClass('current');
        var anchorID = $(this).attr('href');
        $('a[href="'+anchorID+'"]').addClass("current");
      });
    });
    

    【讨论】:

    • @ItsMIllerTime65 - 很高兴我能帮上忙 :) 也请支持我的回答
    猜你喜欢
    • 2022-11-28
    • 2014-04-08
    • 1970-01-01
    • 1970-01-01
    • 2019-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多