我有几个页面,上面有多个可折叠的页面。当一个人扩大时,我想关闭所有其他人。我已经读过我需要使用.trigger('expand')和.trigger('collapse')动态打开和关闭...但是当实际打开可折叠时我如何触发事件?
我认为可能是点击事件... $('#myExpandable').click()
- 不行。
我试图绑定.bind('expand', function() {} );
- 不要......
我试过.live('expand', function() {} );
..一切都没有用。
有人能在这里找到我吗?
谢谢!
答案 0 :(得分:2)
您可以绑定到元素的expand
事件,然后在其余的collaspibles上触发collapse
事件:
//since we don't know when the page will be injected into the DOM,
//we can bind to it's elements once it's been added to the DOM and is about to be initialized
$(document).delegate('#my-page-id', 'pageinit', function () {
//cache each of the collapsible elements in a variable
var $collapse = $(this).find('[data-role="collapsible"]');
//bind to each collapsible's `expand` event
$collapse.bind('expand', function () {
//when a collapsible is expanded, collapse all the others on this page
$collapse.not(this).trigger('collapse');
});
});