javascript – 我是否必须为每个页面创建一个新面板?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 我是否必须为每个页面创建一个新面板?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1560字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 我是否必须为每个页面创建一个新面板?](/upload/InfoBanner/zyjiaocheng/706/e67964c5cd9e4812afa38df229f1cfd3.jpg)
我想在jqm站点中使用Panel来选择我的选择语言组件.因此,每个页面都需要存在该组件.以下是单页面板的设置.
从jquerymobile.com(…我添加了一个标题按钮)
<div id="mypanel" data-role="panel" >
<!-- panel content goes here -->
</div><!-- /panel -->
<div id="myheader" data-role="header" >
<a id='panel_toggle' data-role='button'>choose language</a>
</div><!-- /header -->
<!-- content -->
<!-- footer -->
</div><!-- page -->
我认为我有3个解决方案:
> A – 在每个页面上创建面板的副本
—-如果page_N上的状态发生变化,那么这将是一个问题,那么所有其他状态都需要同步
> B – 创建一个在页面更改时按编程方式移动的面板
—-这看起来像个黑客
> C – 发现jqm是否已经解决了这个问题
—-因此我问的问题:)
jqm是否有办法将Panel从一个页面移动到另一个页面?
解决方法:
您最好的做法是为每个页面动态创建一个面板.
我给你一个工作的例子:http://jsfiddle.net/Gajotres/pZzrk/
$(document).on('pagebeforeshow', '[data-role="page"]', function(){
$('<div>').attr({'id':'mypanel','data-role':'panel'}).appendTo($(this));
$('<a>').attr({'id':'test-btn','data-role':'button'}).html('Click me').appendTo('mypanel');
$.mobile.activePage.find('#mypanel').panel();
$(document).on('click', '#open-panel', function(){
$.mobile.activePage.find('#mypanel').panel("open");
});
});
几个描述:
> $.mobile.activePage是必需的,因为我们将在每个页面中都有相同的面板,并且所有这些面板都具有相同的ID.如果我们打开它没有活动页面,我们将在DOM中打开它的第一个出现.
jQuery Mobile开发人员已经声明,在下一个主要版本面板小部件将不再需要成为页面的一部分,而是将其放置在与页面div相同的级别.因此需要一个小组.不幸的是,您需要动态创建它.
内容总结
以上是互联网集市为您收集整理的javascript – 我是否必须为每个页面创建一个新面板?全部内容,希望文章能够帮你解决javascript – 我是否必须为每个页面创建一个新面板?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。