我的项目有以下.js
文件。这是使用jquery 1.9.x和jquerymobile 1.3.1在常规浏览器中运行的。当页面加载且UI未更新时,下面的init函数似乎正在运行。 虽然...... 我可以将该功能复制到控制台并运行它,并且UI会按照预期进行更新,因此不不正确的文件路径,或UI元素的错误ID,但我怀疑时机。在这种情况下,我也没有使用cordova或手机缺口。
所以,我的问题是,为什么在调用$(document).bind('pageinit', ...)
函数时UI不会更新?如果我在init方法中放置一个断点,那么在页面加载时会调用它。有关使用不同事件或方法的任何建议吗?
var simulator = simulator || {};
(function (feedback, $, undefined) { 'use-strict';
feedback.init = function () {
$.get('feedback-config.xml', function (data) {
$('#feedback-to').val($(data).find('email').text());
$('#feedback-subject').val($(data).find('emailSubject').text());
$('#feedback-display').html($(data).find('message').text());
$('#feedback-form').attr('action', $(data).find('serverurl').text()).ajaxForm({success: function () {
alert("Thank you for your feedback!");
}, error: function () {
alert("We're having difficulties sending your feedback, sorry for the inconvenience.");
}});
});
};
}(simulator.feedback = simulator.feedback || {}, jQuery));
$(document).bind('pageinit', function () { 'use strict';
simulator.feedback.init;
});
提前致谢。
答案 0 :(得分:0)
发现它,简单的错误......在'pageinit'函数中我调用simulator.feedback.init;
而不是simulator.feedback.init();
不确定为什么JSLint最初没有选择它,但它指出了我稍后再试一次。感谢。