2
我正在做的PhoneGap應用程序在iOS上,通過時間 我試過一次添加到每個項目裏的ID,然後排序根據id需要排序列表排序名單通過ID通過使用javascript
<ul id="test">
<li id="4112">blub</li>
<li id="1422">blaaah</li>
<li id="6640">hmmmm</li>
<li id="2221">one more</li>
</ul>
這裏是JavaScript:
$(function(){
var elems = $('#test').children('li').remove();
elems.sort(function(a,b){
return (new Date(a.id) > new Date(b.id));
});
$('#test').append(elems);
});
http://jsfiddle.net/3uYUq/1103/
我試圖對鉻和它運行良好。但是,如果我嘗試使用phonegap應用程序,則列表未正確排序。它不遵循任何順序。任何解決方案? P/S:有人說在Safari上應該是(新日期(a.id) - 新日期(b.id))在Safari上,但似乎它不影響電話
解釋更多關於我的phonegap代碼。此代碼從db中檢索記錄並將其顯示爲html上的項目列表。
function getAllDeadlines_success(tx, results){
var len = results.rows.length;
//var s = "";
$('#allList').empty();
var tmpDueDate = '1900-01-01';
var tmpDueTime = '00:00';
for (var i=0; i<len; i++){
var allDeadline = results.rows.item(i);
var deadlineDatePart = allDeadline.duedate.split('-');
var deadlineTimePart = allDeadline.duetime.split(':');
var newDate = new Date(deadlineDatePart[0], deadlineDatePart[1] - 1 , deadlineDatePart[2], deadlineTimePart[0], deadlineTimePart[1], 0, 0);
var notiDate = new Date(newDate - 86400*1000);
//compare with current time
var result = isLate(allDeadline.duedate, allDeadline.duetime).toString();
if (result == "true"){
$('#allList').append('<li id = "'+allDeadline.duedate+' '+allDeadline.duetime+'"><a href="#DeadlineDetail" id = "'+allDeadline.id+'" data-transition = "slide">'+ allDeadline.class +'<br>'+ allDeadline.duedate+' '+ allDeadline.duetime+'<br>'+ allDeadline.description +'</a></li>');
// window.plugin.notification.local.add({
// id : getRandomInt(0,99999),
// message: 'Dont forget to complete: '+allDeadline.description+'',
// badge: 0,
// date: notiDate
// });
}
}
$(function(){
var elems = $('#allList').children('li').remove();
elems.sort(function(a,b){
return (new Date(a.id) > new Date(b.id));
});
$('#allList').append(elems);
});
$("#allList").listview().listview('refresh');
}
比較函數必須返回一個整數。你的比較函數返回'true'或'false'。 – Barmar
你爲什麼要將ID轉換爲Date? – Barmar
我轉換爲日期,因爲我想檢查項目a的日期是晚於還是在項目b的日期之前,所以我可以正確命令它們 – ThangPQ