在jQuery mobile collapsible里面点击检测按钮

时间:2013-09-02 16:37:27

标签: javascript jquery-mobile

我正在使用jQuery mobile,我试图在可折叠的内部添加一个按钮,但问题是,当我点击按钮时,不会触发click事件,而是块被取消折叠或折叠。

我尝试了下面的代码但是没有用

$(document).on('pagebeforeshow', '#page', function () {
    $('#header').on('click', '#start', function (e) {
        alert("click");
        e.stopPropagation();
        e.preventDefault();
        e.stopImmediatePropagation();
    });
});
<div data-role='collapsible' data-theme='c' data-content-theme='d' data-collapsed icon='arrow-d' data-expanded-icon='arrow-u' data-iconpos='right'>
    <h4 id='header'>
    <input type='button' data-theme='c' value='Demarrer' data-mini='true' data-inline='true' data-icon='mappin' data-icon-pos='top' id='start'/>
    </h4>"
</div>

1 个答案:

答案 0 :(得分:0)

那是因为你的按钮存在于可折叠部分内。你可以做的就是当单击按钮时阻止该部分折叠,即点击目标的id,如果是id =“start”,那么e.preventDefault();所以像这样:

$('#header').on('click', function (e) {
    var id = e.target.id;
    if(id=="start"){
      alert("click");
      e.stopPropagation();
      e.preventDefault();
      e.stopImmediatePropagation();
    }

});