将子元素设置为aria-expanded =" true"当父包含class =" active"

时间:2017-02-07 20:22:25

标签: javascript html css twitter-bootstrap scroll

当我的父元素包含类aria-expanded="true"时,我想将子元素设置为active

<li class="dropdown active">
    <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="true">
        Section 4 
        <span class="caret"></span>
    </a>
    <ul class="dropdown-menu">
        <li class=""><a href="#section41">Section 4-1</a></li>
        <li class=""><a href="#section42">Section 4-2</a></li>
    </ul>
</li>

此代码来自示例here

在该示例中,我向下滚动到第4-1和4-2部分,我希望下拉列表打开。我尝试了几件事,但我还没有找到可行的解决方案。

2 个答案:

答案 0 :(得分:0)

如果是点击事件,请使用类似的内容。

BasicDBObject searchQuery = new BasicDBObject();
searchQuery.put("tags", new BasicDBObject("$ne", []));

$('body').on('click', 'li.dropdown', function(){
  if($(this).hasClass('active')){
    $(this).children().attr('aria-expanded', true);
  }
});

答案 1 :(得分:0)

你真正想要的是将类打开添加到活动下拉列表中,你想要的效果与aria-expanded = true无关:

使用此代码:

$(window).scroll(function(){
if ( $( ".dropdown" ).is( ".active" ) ) {
     $( ".dropdown.active" ).addClass("open");
}
else
{
$( ".dropdown" ).removeClass("open");
}

});