【问题标题】:JQueryMobile ID selector not picking up the elementJQueryMobile ID 选择器没有拾取元素
【发布时间】:2011-09-20 20:48:05
【问题描述】:

为什么这个选择器不起作用? 我正在使用最新版本的 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-]" 并且有效.. 所以我很肯定我正确包含了所有库。

【问题讨论】:

    标签: jquery jquery-selectors jquery-mobile


    【解决方案1】:

    mobileinit 用于在 jQuery Mobile 中配置选项,而不是在文档准备好时进行操作。此时 DOM 不一定准备好使用。

    您应该改用pageInit(或者只是将您的“mobileinit”更改为“pageinit”,这应该做同样的事情)。

    http://jquerymobile.com/test/docs/api/globalconfig.html

    (编辑为引用pageInit,因为您应该在 jQuery 移动设备中使用它而不是 .ready(),因为在 DOM 准备好后由 AJAX 加载内容)

    【讨论】:

    • 谢谢。我从他们的文件中误解了这一点。另一个函数称为onclick,因此它可以正常工作。
    • 看看编辑后的答案,因为我最初使用 .ready() 的建议不正确,抱歉。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 2017-06-07
    • 2022-01-05
    • 2020-02-05
    • 1970-01-01
    • 1970-01-01
    • 2015-08-31
    相关资源
    最近更新 更多