Я хотел бы создать кнопку collpase/expand all для набора аккордеонов. Я использую angular.js v1.2.6 и angular-bootstrap-ui 0.9.0. Я не смог найти пример того, как сделать collpase/expand all. Я - угловатый новичок, и любые советы или предложения приветствуются.angular-ui-bootstrap accordion collapse/expand all
Я также должен добавить, что решение в this post не работает в новой версии angular.js (v1.0.8 vs v1.2.6), которую я использую (которая является последней версией на момент этого проводка). В новой версии он вызывает ошибку при попытке создать две изолированные области.
разметки:
<div ng-controller="myCtlr">
<accordion close-others="oneAtATime">
<button class="btn" ng-click="section.isCollapsed = !section.isCollapsed">Toggle Sections</button>
<accordion-group ng-repeat="section in sections" is-open="section.isOpen">
<accordion-heading>
<div class="accordion-heading-content" ng:class="{collapsed: section.isOpen}">
{{section.name}}
</div>
</accordion-heading>
Section content
</accordion-group>
</accordion>
</div>
JS:
var theapp = angular.module('myApp', [
'ui.bootstrap'
])
function myCtlr ($scope) {
$scope.isCollapsed = false;
$scope.sections = [
{'id': '353','otherid': '7','name': 'One','Sequence': '1'},
{'id': '354','otherid': '8','name': 'Two','Sequence': '1'},
{'id': '355','otherid': '9','name': 'Three','Sequence': '1'}
];
}
Круто. Я понял в основном то же самое, используя директиву Collapse с атрибутом isCollapsed. В любом случае, это отлично работает. Благодаря! – Konsuela
Любой пользователь может также найти эту демонстрацию, которую я только что создал для ручной настройки активной группы аккордеона. http://plnkr.co/edit/CD5156TaFlL365HBcyrJ?p=preview – Blowsie
Плункер в этом решении не обязательно работает так, как я интерпретирую прецедент. Когда вы нажимаете только один заголовок, все они переключаются, что не является желательным воздействием (IMO). Только кнопка «переключить все» должна переключать их все, иначе, в чем смысл переключения кнопки «все»? – coblr