我知道以前有人问过这个问题,但我已经尝试了所有我能找到的解决方案,但无济于事。
我的 jqm 样式没有被初始化,很像这个人的问题:JQuery mobile -> .append() removes CSS? 我已经尝试过 .trigger('create') 和 listview('refresh') 方法,甚至两者的组合。
玉:
#category(data-role='page')
a(href='#automobile', data-transition='slide', onclick="return loadItemsBrief('automobile');")
| Automobile
... //code reduced here
#automobile(data-role='page')
div(data-role='content')
div#refresh(data-role='fieldcontain')
ul#autoList(data-role='listview', data-divider-theme='b', data-inset='true')
Javascript(单独的 .js)
function loadItemsBrief(cat){
$.getJSON(''+cat, function (json) {
$.each(json.items,function(i,data) {
$('#autoList').append('<li data-theme="c"><a href="" data-transition="slide" class="touchableButton"><div style="display: inline-block"><img style="width: 100px; height: 125px" src=""'+data.fileUrls[0]+'></div><div style="display: inline-block"><h3>Title: '+data.name+'</h3><h3>Price: '+data.minBid+'</h3><h3>Condition: '+data.condition+'</h3></div></a></li>'); //tried .trigger('create') here
});
$('#autoList').listview('refresh'); //also tried placing .listview('refresh') in inner most layer
});
}
萤火虫给我的错误是:
TypeError: $(...).listview is not a function
$("#autoList").listview("refresh");
帮助将不胜感激,谢谢!