我正在使用jqtouch的DataZombies fork来创建索引列表。我包括扩展脚本和css,并使用以下行标记:
<div class="s-scrollwrapper indexed">
<ul id="county-list" class="edgetoedge">
<li id="A" class="sep" >A</li>
<li>test A</li>
<li id="B" class="sep" >B</li>
<li>test B</li>
<li id="C" class="sep" >C</li>
<li>test C</li>
<li id="D" class="sep" >D</li>
<li>test D</li>
</ul>
</div>
这很好用。但是当我使用jquery重写列表的内容时,跳转到索引功能不起作用。我尝试在DOM更改后调用以下函数...
initListIndices()
......但它不起作用。右侧的索引仍然出现,分隔符li上的样式都很好,但它没有做到这一点。有什么建议吗?
答案 0 :(得分:0)
我解决这个问题的方法是创建一个清除列表标记数据的函数。在调用initListIndices()之前调用它然后将索引类重新添加到列表包装中似乎可以解决它。
function clearListIndices() {
// for each element with the class of .indexed
$('body').find('.indexed').each(function(){
// reset the listIndex data associated with this element
$(this).data('listIndex', null);
// removed the class to avoid multiple instances of the class
$(this).removeClass('indexed');
});
// for each listIndex ul
$('body').find('.listIndex').each(function(){
// remove this from the DOM
$(this).remove();
});
}