Я пытаюсь создать несколько элементов Iron Collapse с содержимым внутри. Я хочу, чтобы железный коллапс расширялся, когда пользователь нажимал кнопку. Проблема в том, что я не могу развернуть каждый элемент отдельно. Скрипт ловит только первый элемент и не влияет на остальные. Я пробовал много примеров кода, но безуспешно. Кто-нибудь может мне помочь? Мой код ниже:
var expandContent = document.getElementById('mybutton');
expandContent.onclick = function(event) {
var moreInfo = document.getElementById('moreinfo');
var iconButton = Polymer.dom(event).localTarget;
iconButton.icon = moreInfo.opened ? 'hardware:keyboard-arrow-down'
: 'hardware:keyboard-arrow-up';
/*moreInfo.toggle();*/ /* This one works to, don't know which is better */
event.currentTarget.parentElement.querySelector('iron-collapse').toggle();
};
<paper-card style="width:100%;line-height:56px;font-size:16px;font-weight:400;">
<paper-icon-button class="mybutton" id="mybutton" icon="hardware:keyboard-arrow-up" style="float:right;margin:8px;" >
</paper-icon-button>
<iron-icon icon="communication:forum"></iron-icon>
<iron-collapse id="moreinfo" class="moreinfo" style="width:100%;">
<paper-item>
<iron-icon icon="info"></iron-icon>
<paper-item-body two-line>
<div>Primary text</div>
<div secondary>Secondary text</div>
</paper-item-body>
</paper-item>
<paper-item>Second item</paper-item>
<paper-item>Third item</paper-item>
</iron-collapse>
</paper-card>
Я хочу, чтобы только один коллапс расширялся после нажатия соответствующей кнопки. Есть ли способ изменить этот код, чтобы добиться того, что мне нужно, без полной перезаписи, потому что только с этим кодом iron-collapse работает правильно и меняет свой атрибут expand="yes/no", который я позже использую с файлами cookie?