gpt4 book ai didi

javascript - 使用 jquery mobile 的动态 ListView

转载 作者:行者123 更新时间:2023-11-28 09:17:35 25 4
gpt4 key购买 nike

我在刷新 jquery 移动 ListView 时遇到问题。

这段代码工作正常:

$(document).bind( "pagebeforechange", function( e, data ) {

// Generating a dynamic list
for(var i=0;i<list.length;i++){
var link = '<li><a href="#">'+list[i].name+'</a></li>';
$("#listview").append(link);
}

// Listview refresh
$("#myPage").on('pagebeforeshow', function() {
try {
$("#listview").listview('refresh');
} catch (e) {
$("#listview").listview();
}
});

$.mobile.changePage($(#myPage), {
transition:"slide",
dataUrl:url,
allowSamePageTransition:true,
reverse:reverse
});
e.preventDefault();

});

但是,我需要动态添加一个图标来列出用户收藏夹中的 View 项目。我使用一个函数,该函数通过对本地数据库的请求返回一个数组。

$(document).bind( "pagebeforechange", function( e, data ) {

getFavs(function(favsArray){

// Generating dynamic list with image
for(var i=0;i<list.length;i++){
favImg = "";
if(favsArray.indexOf(list[i].id) !== -1){
favImg = '<img src="images/star-36-black.png" class="ui-li-icon" />';
}
var link = '<li><a href="#">'+favImg+list[i].name+'</a></li>';
$("#listview").append(link);
}

// Listview refresh
$("#myPage").on('pagebeforeshow', function() {
try {
$("#listview").listview('refresh');
} catch (e) {
$("#listview").listview();
}
});

});

$.mobile.changePage($(#myPage), {
transition:"slide",
dataUrl:url,
allowSamePageTransition:true,
reverse:reverse
});
e.preventDefault();

});

在第二种情况下,不应用Listview()。我不明白为什么第二个选项如此不同以至于它破坏了 Listview()...

最佳答案

我发现了类似的帖子here ,尽管解决方案不同。对于第二个选项,我只需删除对 pagebeforshow 的绑定(bind):

   // Listview refresh
try {
$("#listview").listview('refresh');
} catch (e) {
$("#listview").listview();
}

但是,我还不明白为什么第一个选项需要绑定(bind)到 pagebeforeshow,而它会破坏第二个选项中的代码...

关于javascript - 使用 jquery mobile 的动态 ListView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15449028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com