我对PhoneGap中的onDeviceReady
事件有疑问。
当我的应用程序启动时,我使用jQuery.text()动态填充一些字段,然后我启动一个动画进度条。
在没有收听事件的情况下对其进行测试(但在app.initialize()
中编写代码),一切正常。
使用事件,后面的代码可以工作,但DOM不会更新。
我尝试使用这个jQuery代码行:$('.page').trigger('refresh');
除了动画进度条之外,它工作得很好。
jQuery.trigger('refresh')
是一个干净的解决方案吗? (我想不!)
我怎么能解决这个问题?
谢谢!
以下是代码:
var app = {
dateP: "",
initialize: function (date) {
dateP = date;
//this.actions();
this.bindEvents();
},
bindEvents: function () {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
onDeviceReady: function () {
app.receivedEvent('deviceready');
},
receivedEvent: function (id) {
if (id == 'deviceready') this.actions();
},
actions: function () {
var date = this.getDate();
var id = this.getDayId(date);
var perc = Math.ceil((id / 365) * 100);
this.shareButtonInizialize();
this.fillDivs(new Date());
$("#mainDayCounter").text("Giorno #" + this.getDayId(date));
$("#dayCounter").text("Giorno #" + this.getDayId(date));
this.setBar(perc);
},
setBar: function (perc) {
$("#main-page #probar").attr({
"data-pro-bar-percent": perc,
"data-pro-bar-text": perc + "% \xa0"
});
},
/* OTHER FUNCTIONS */
}