jQuery Mobile / Handlebars - 打开面板隐藏 data-role=content div

2023-12-09

我正在尝试将 Handlebars 与 jQuery mobile 一起使用。我正在使用 jQuery 1.9.1、jQueryMobile 1.4、Handlebars 1.1.2。

<div data-role="page" id="attach-template">

    <div data-role="panel" id="mypanel">
           <div data-role="header">
                    <h1>Title</h1>
                </div><!-- /header -->
                <nav>
                    <ul>
                        <li><a href="index.html">Home</a></li>
                        <li><a href="promotions.html">Promotions</a></li>
                        <li><a href="events.html">Events</a></li>
                    </ul>
                </nav>
          </div>

        <script id="content-template" type="text/x-handlebars-template">



          <div data-role="header">
                <a href="#mypanel" data-icon="gear">M</a>
                <h1>{{title}}</h1>
            </div>

            <div data-role="content" id="listview-content">
            HELLO!

        </div><!-- /content -->

            <div data-role="footer">
                <h4>Page Footer</h4>
            </div>

        </script>

    </div><!-- /page -->

问题是,当我加载页面、拉入数据、编译模板并将它们附加到 data-role="page" 时,它显示正常,但是当我单击“打开面板”按钮时,data-role= “内容”消失。查看 chrome 开发工具,看起来 jQM 没有像页眉和页脚那样移动或附加此 div。

有什么建议为什么只有这个 div 这样做而不是全部?

我还尝试在handlebars.append 之后调用以下内容,但没有执行任何操作:

$("#listview-content").trigger('create');
$('#mypanel').trigger('updatelayout');
$('body').trigger('create');
$('body').trigger('pagecreate');

使用内部或外部面板时,请包裹内容分区在 div 中ui 面板包装器类以避免重新加载内容分区第一次打开面板时。

<div class="ui-panel-wrapper">
  <div class="ui-content">
  </div>
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery Mobile / Handlebars - 打开面板隐藏 data-role=content div 的相关文章

随机推荐