gpt4 book ai didi

jquery - 带有 jQ​​uery Mobile 的外部链接和硬件后退按钮

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:07:49 25 4
gpt4 key购买 nike

这是我第一个使用 jquery mobile 的网站,我在使用外部链接时遇到了问题。

我会给你看一个例子。

这是A页

<!DOCTYPE html >
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>PageA</title>

<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />

<link href="Style/Style.css" rel="stylesheet" type="text/css" />
<link href="http://code.jquery.com/mobile/1.0rc1/jquery.mobile-1.0rc1.min.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0rc1/jquery.mobile-1.0rc1.min.js"></script>

</head>
<body>
<!-- Start of first page -->
<div data-role="page" id="pageA" data-title="Page A" data-theme="b" data-dom-cache="false">
<div data-role="header" data-theme="b">
<h1>Page A</h1>
</div>
<!-- /header -->
<div data-role="content">

<ul data-role="listview" data-theme="g">
<li><a href="PageB.htm" rel="external">PageB</a></li>
</ul>

</div>

</div>

当我点击链接时,我将转到页面B(到目前为止,一切正常)

<!DOCTYPE html >
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Pag B</title>

<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />

<link href="Style/Style.css" rel="stylesheet" type="text/css" />
<link href="http://code.jquery.com/mobile/1.0rc1/jquery.mobile-1.0rc1.min.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0rc1/jquery.mobile-1.0rc1.min.js"></script>
</head>
<body>
<!-- Start of first page -->
<div data-role="page" id="pageB" data-title="Page B" data-theme="b" data-dom-cache="false">
<div data-role="header" data-theme="b">
<h1>Page B</h1>
</div>
<!-- /header -->
<div data-role="content">

<p>I am Page B!!!</p>

</div>
<!-- /content -->
<div data-role="footer" data-theme="c">
<h4>Test</h4>
</div>
<!-- /footer -->
</div>

当我在页面 B 时,我按下 Android 移动设备中的硬件后退按钮并返回到页面 A。

然后我再次按下页面 A 中的链接。页面 B 出现,但它也加载页面 A 并显示典型的加载 div..

问题是?为什么会这样??其次,这样做的方法是什么?

我找到了一种方法来解决页面 B 中的 pagebeforehide 事件,但我认为这不是解决问题的方法..

谢谢!

最佳答案

我遇到了类似的问题。我设法将其缩小到与使用硬件后退按钮相关的问题。使用此按钮时,移动浏览器不会启动 document.ready 或 pageinit 事件。此外,在按下后退按钮后再次从页面 B 转到 A 时,这些事件不止一次触发。

绑定(bind)到 body 元素内的 onunload 解决了这个问题。在上面的例子中,将它包含在页面 A 的 body 标签中解决了这个问题:

感谢 Pumbaa80 和 Nickolay Is there a cross-browser onload event when clicking the back button?

关于jquery - 带有 jQ​​uery Mobile 的外部链接和硬件后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7822324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com