2015-09-17 106 views
0

我正试图建立一个简单的手风琴聚合物组件。我有它的工作,所以当我点击列表中的一个项目,一个open类被添加到显示其内容的项目。移除Dart中Polymer对象的所有其他实例的类?

我不希望能有多个项目同时打开,所以在我点击功能,我基本上是想说:

$(".list-item").on("click", function() { 
    $("list-item").removeClass("open"); 
    $(this).addClass("open"); 
} 

当然,这是在jQuery和不飞镖。 ..所以这并没有多大帮助。

飞镖上面的等效物是什么?

这是我现在正在工作的东西(只是打开每个点击的项目,但不关闭其他人在这个过程中)。

 _openedChanged: function() { 
     if (this.opened) { 
     this.toggleClass('open', true); 
     } 
     else { 
     this.toggleClass('open', false); 
     } 
     this.setAttribute('aria-expanded', this.opened ? 'true' : 'false'); 
    } 

回答

4

要删除的飞镖所有list-item要素类,你可以这样做:

querySelectorAll('list-item').forEach((item) => item.classes.remove('open')); 
相关问题