如何绑定点击collapsible-set的一个元素?
<div data-role="content">
<div data-role="collapsible-set" data-theme="d" data-content-theme="d">
<div data-role="collapsible" id="expand">
<h3>header</h3>
</div>
</div>
</div>
试试这个:
$(document).on('click', '#expand', function (e) {
e.stopImmediatePropagation();
e.preventDefault();
console.log('ekb'); // my stuff
});
答案 0 :(得分:2)
似乎由于jQuery Mobile增强功能,单击标题时不会触发绑定到click事件的操作。 一个选项(我承认不是很漂亮)可能是在完成JQM增强之后将事件绑定到正确的DOM元素。如果你确实打算防止默认行为(这将阻止可以通过拆除折叠!),你可以使用这样的代码:
$(document).on('pageinit',function (f) {
//pageinit event is triggered after the page is initialized
$("#expand").find("*").click(function (e) {
//apply to all descendant of your element "#expand a" selector would be sufficient to cover the header
e.stopImmediatePropagation();
e.preventDefault();
console.log('ekb');
});
});
结果显示为here