javascript - 由带有 jsfiddle 的嵌套 ListView 引起的多个 pagebeforecreate 事件

标签 javascript jquery cordova jquery-mobile jquery-events

来 self 关于@jquery 的主题: https://forum.jquery.com/topic/multiple-pagebeforecreate-events-triggered-when-jqm-builds-the-page-for-nested-listviews-w-jsfiddle

现在可以理解了,但有点不直观。 Google 帮助不大,主要是指向“使用 pageinit 而不是 doc.ready()”。嵌套 ListView 页面中的注释会节省一些时间。在点击之前加载页面是我一个人还是有点不直观?

问题是:如何检测事件负载的差异?探索事件对象时没有任何亮点。

我在说什么? :) 代达罗斯更新:http://jsfiddle.net/3Shyb/ 原文:http://jsfiddle.net/jhr007/mDVfP 在 jsfiddle 中,消息被发送到控制台日志。 打开并清除控制台。运行。

注意关于“pagebeforecreate Man handle the dom..”等两条消息。1,然后 2

如果您编辑 html 并删除嵌套的 <ul> ... </ul> ,然后运行。您会收到一次消息。

每次加载带有子菜单的导航菜单的页面时都会发生这种情况。


http://www.jquerymobile.com/demos/1.1.0/docs/lists/docs-lists.html

当单击带有子列表的列表项时,框架将生成一个新的 ui 页面,其中填充了标题中的父项标题和子元素列表。 .. 列表可以嵌套多层,所有页面和链接都将由框架自动处理。

最佳答案

不幸的是,您引用的那部分文档是错误的。 listview 小部件在创建父页面时创建 ui 页面。单击 ListView 项时不会。这就是您看到多个 pagecreate 事件的原因。如果你有两个嵌套的 ListView ,你会看到 3 pagebeforecreate 事件。从我在下面粘贴的代码中可以看出,嵌套列表的子页面与普通的 JQM 页面完全一样。

<div data-role="page" data-url="/_display/&amp;ui-page=0-0" data-theme="null" data-count-theme="c" tabindex="0" class="ui-page ui-body-null">

    <div data-role="header" data-theme="b" class="ui-header ui-bar-b" role="banner">
        <div class="ui-title">Step 1</div>
    </div>

    <div data-role="content" class="ui-content" role="main">
        <ul class="ui-listview">
            <li class="ui-li ui-li-static ui-body-c">Step 1</li>
            <li class="ui-li ui-li-static ui-body-c">Step 2</li>
            <li class="ui-li ui-li-static ui-body-c">Step 3</li>
            <li class="ui-li ui-li-static ui-body-c">Step 4</li>
            <li class="ui-li ui-li-static ui-body-c">Step 5</li>
        </ul>
    </div>

</div>

关于javascript - 由带有 jsfiddle 的嵌套 ListView 引起的多个 pagebeforecreate 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10661969/

相关文章:

android - Ionic Cordova Android : No usable Android build tools found. 最高 30.x 安装版本为 30.0.2;所需的最低版本是 30.0.3

android - Phonegap Android 键盘覆盖输入元素滚动被禁用

javascript - 在javascript中,新的对象函数如何扩展同名的原型(prototype)函数?

javascript - 如何全局存储div ID值

javascript - 使用 jquery 和 javascript 创建一个 Adob​​e 渐变选择器

javascript - 的下一个实例

javascript - 在 PhoneGap 中使用 JavaScript 创建和使用 iOS settings.bundle 值

javascript - PCI 无法对 google js 进行脚本源完整性检查

javascript - 如何访问通过 jQuery load() 发送到 div 的 URL 参数

jquery - 更改 CSS 菜单悬停颜色