跟踪jQuery移动,可折叠内容的崩溃状态,

时间:2013-05-08 02:30:41

标签: javascript list jquery-mobile collapse

我在jQuery Mobile中实现了一个可折叠列表。我正在尝试开发一个简单地设置为true或false的变量,具体取决于天气或者不扩展列表中的任何元素(换句话说,只有列表中的每个元素都被折叠才会出错)。我能想到的唯一方法是通过'展开'和折叠事件,但崩溃事件会在页面加载时为每个列表项触发一次,并且在单击元素时会触发多次。以下是我目前的代码。任何人都可以告诉我我做错了什么或建议另一种方法吗?

JS:

$("#listElement").bind('collapse', $.proxy(function () {
    alert("collapse");
}, this)).bind('expand', $.proxy(function () {
    alert("expand");
}, this));

HTML:

<div id='listElement' data-role="collapsible" data-collapsed='true'>
        <h3>Header Text</h3>
    <p>collaplible content</p>
</div>

更新

下面的评论说明我的部分问题来自于我在填充列表时动态设置'collapse'处理程序这一事实。请参阅以下代码:

JavaScript的:

for (var i = 0; i < 10; i++) {
    var element = $("#element").clone();
    $("#list").append(makeListElement(element));
}

function makeListElement(element) {
    element.find('h3').append("Some Html");
    element.bind('collapse', $.proxy(function () {
        alert("collapse");
    }, this)).bind('expand', $.proxy(function () {
        alert("expand");
    }, this));

}
}

克隆元素:

<div id='element' data-role="collapsible" data-collapsed='true'>
        <h3></h3>

    <p></p>
</div>

0 个答案:

没有答案