PJAX和Firefox后退按钮问题
PJAX and Firefox back button issue
我正在测试jquery.pjax.js并注意到一个问题。
在我的最小测试项目中,发生了如下奇怪的行为:
- 在firefox中访问index.php
- 点击pjax链接:位置栏和页面内容被改变
- 点击Firefox的后退按钮:位置栏改变了,但内容保持不变
此行为不会在googlchrome中发生。
我想知道如何解决这个问题。
我的测试项目是:
http://karasunouta.com/php_test/pjax/
http://karasunouta.com/files/pjax.zip
index . php
<?php
$page = 1;
if (isset($_GET['page'])) {
$page = $_GET['page'];
}
$isPjax = false;
if (!empty($_SERVER['HTTP_X_PJAX'])) {
$isPjax = true;
}
if (!$isPjax):
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>page<?php echo $page; ?></title>
<script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="js/jquery.pjax.js"></script>
<script type="text/javascript">
$(function(){
// link
$(document).pjax('a.pjax', '#main');
// form
$(document).on('submit', 'form', function(event) {
$.pjax.submit(event, '#main')
})
});
</script>
</head>
<body>
<h1>pjax test</h1>
<ul class="links">
<li><a href="?page=1" class="pjax">page1</a></li>
<li><a href="?page=2" class="pjax">page2</a></li>
<li><a href="?page=3" class="pjax">page3</a></li>
</ul>
<form>
Page:<input name="page" type="text" value="1">
<input type="submit">
</form>
<div id="main" style="border: 3px double gray">
<?php endif; ?>
<?php include("page/{$page}.html") ?>
<?php if (!$isPjax): ?>
</div>
</body>
</html>
<?php endif; ?>
1.页面/html
page1 contents
2.页面/html
page2 contents
3.页面/html
page3 contents
js/jquery-1.9.1.min.js
js/jquery.pjax.js
我本可以自己找到解决办法的…
:
$(function(){
// apply pjax
});
:后$(document).ready(function() {
// apply pjax
});
现在firefox后退按钮看起来工作正常。
我不确定原因。
他们的实际行为看起来不同,尽管一些文本说这两种书写形式的含义完全相同…
相关文章:
- 后退按钮问题
- Javascript上传按钮问题,适用于Wordpress
- 点击jquery上的按钮问题
- Safari浏览器返回按钮问题
- 表单操作过程中出现后退按钮问题
- 单选按钮切换按钮问题
- JavaScript/jQuery .click() 按钮问题
- 页面哈希和后退按钮问题 phonegap+Jquery
- 角度 UI 路由器后退按钮问题
- 将多个事件附加到 IE 中的按钮问题
- css 按钮宽度作为百分比?响应按钮问题
- JQuery 未检查单选按钮问题
- JavaScript 单选按钮问题
- 重置按钮问题
- Ember.js路由和后退按钮问题
- jquerymobile动态更改按钮问题的文本
- AngularJS中的Skype URI按钮问题
- 使用 jquery 多次点击按钮问题
- Windows Phone PhoneGap应用返回按钮问题
- 使用jquery和php提交按钮问题