我已经尝试了许多“标准的”HTML函数来访问JavaScript文档中的元素(getElementById、getElementsByName等),但是我不能让它在jQuery移动中工作--当一个子页面被加载时,从getElementById("elementOfInterest").innerHTML返回的值仍然包含来自母版页的值。
我正在尝试在一个iPhone应用程序中实现这一点,在导航栏中提取并显示子页面的标题(页面显示在UIWebView中),但我认为(并希望)问题和解决方案或多或少是“平台无关的”。
有人想过如何使用JavaScript (或者一些jQuery函数)来实现这一点吗?不过,我在jQuery手机文档中找不到任何东西。
发布于 2011-02-26 17:59:49
根据Ajax移动configuration的默认行为,它将在可能的情况下通过Ajax自动处理链接点击和表单提交。因此,当您打开一个新页面(子页面)时,新页面将被附加到母版页的DOM中。在此期间,您将释放在新页面上编写的JavaScript。
根据我的想法,您可以禁用Ajax表单和链接。
为此,编写一个链接,如下所示:
<a href="createForm.htm" data-role="button" data-ajax="false">Create</a>您还可以通过覆盖默认配置对所有链接执行此操作:
<script src="/js/jquerymobile/jquery-1.5.min.js"></script>
<script type="text/javascript">
$(document).bind("mobileinit", function(){
$.mobile.ajaxEnabled= false;
});
</script>
<link rel="stylesheet" href="/css/jquerymobile/jquery.mobile-1.0a3.min.css" />
<script src="/js/jquerymobile/jquery.mobile-1.0a3.min.js"></script>在这两种方式中,痛苦的是,你会松开框架生成的后退按钮!
有关更多信息,请访问:http://jquerymobile.com/demos/1.0a3/#page.html&subpageidentifier
编辑:
要在新页面中添加后退按钮,可以手动添加,如下所示:
<div data-role="header">
<a href="../list.htm" data-icon="arrow-l" data-ajax="false">Back</a>
<h1>
List items
</h1>
</div>https://stackoverflow.com/questions/4973509
复制相似问题