用.append克隆div后克隆的只是不打开。所以我有两个div打开确定,所有新生成的只是对鼠标点击没有反应。 我试过崩溃或开放的状态,他们只是没有反应。
<link href="jquery-mobile/jquery.mobile-1.3.0.min.css" rel="stylesheet" type="text/css"/>
<script src="jquery-mobile/jquery-1.8.3.min.js" type="text/javascript"></script>
<script src="jquery-mobile/jquery.mobile-1.3.0.min.js" type="text/javascript">
</script>
<script>
$(document).ready(function(){
for(i=1;i<10;i+=1){
$('#news_line').clone().attr('id',"news_line"+i).appendTo('#acc_news').trigger('create');
}
$('.title1').text("заголовки");
$('.ptext1').text("описание");
$('#acc_news').collapsibleset("refresh");
});
</script>
<div data-role="collapsible-set" data-theme="d" data-content-theme="d" data-mini="true" id="acc_news">
<div data-role="collapsible" id="news_line">
<h2>
<div class="title1">
</div>
</h2>
<div class="ptext1">
</div>
</div>
<div data-role="collapsible" id="last_line">
<h2>
<div class="title1">
</div>
</h2>
<div class="ptext1">
</div>
</div>
</div>
答案 0 :(得分:0)
而不是document.ready,使用jQM页面事件(pagecreate,pageinit等)。然后,当你克隆已经增强的潜水时,你不需要调用触发器('create')或刷新可折叠集:
$(document).on("pagecreate", "#page1", function(){
for(i=1;i<5;i+=1){
$('#news_line').clone().attr('id',"news_line"+i).appendTo('#acc_news');
}
$('.title1').text("заголовки");
$('.ptext1').text("описание");
});
这是一个有效的 DEMO