为什么这个选择器不起作用? 我正在使用最新版本的JQuery Mobile(1.0 b3)和jquery 1.6.2
选择
function updateStatusBar(statusMessage) {
alert("Hello World!");
$("#status-bar").html(statusMessage);
}
标记
...
<div data-role="footer" data-theme="<?php echo $data_theme; ?>">
<div id="status-bar"></div>
</div>
...
为了测试目的,我从
调用函数updateStatusBar$(document).bind("mobileinit", function(){
updateStatusBar("Foo Bar");
});
然而,因为它只能看到警报信息。 div的innerHTML
未更新。这甚至是选择器问题吗?我必须提一下,我在选择器"[class*=ui-bar-], [class*=ui-body-], [class*=ui-btn-]"
的同一页面上有另一个功能,并且有效..所以我很肯定我正确地包含了所有库。
答案 0 :(得分:2)
mobileinit
用于配置jQuery Mobile中的选项,而不是在文档准备好时执行操作。此时DOM尚未准备好使用。
您应该使用pageInit
代替(或者只是将“mobileinit”更改为“pageinit”,这应该做同样的事情。)
http://jquerymobile.com/test/docs/api/globalconfig.html
(编辑引用pageInit
,因为你应该在jQuery mobile中使用它而不是.ready()
,因为在DOM准备好后,内容会被AJAX加载)