gpt4 book ai didi

jquery - History.js 使用 ie6/ie7 恢复状态

转载 作者:行者123 更新时间:2023-12-01 01:50:11 25 4
gpt4 key购买 nike

我已经在 HTML5 浏览器和 IE8/9 上成功使用 History.js,但即使我使用的是 html4+html5 jQuery 版本,它也无法在 ie6/ie7 中工作。

使用以下代码,我希望当我单击主页上的普通链接,然后单击后退按钮返回主页时,状态.data 能够恢复。

主页包含以下代码,通过提交表单来调用:

if (window.History && window.History.enabled) {
var vars = {};
var tables = {};
vars['something'] = 'value';
History.replaceState({vars: vars, tables: tables}, null, window.location.href.match(/^([^#]*)/)[1]);
}

该页面有一个 onload 函数,如下所示:

var state = History.getState();
var data = state.data;

if (data.vars) {
alert('success!');
}

它在 IE6/IE7 下没有显示成功,尽管它在我尝试过的任何其他浏览器上运行良好。

您是否发现任何明显缺失的内容,或者知道如何继续?我尝试调试history.html4.js和history.js的非缩小版本,但我不理解交互的微妙之处。

感谢您提供的任何帮助。

最佳答案

我确信您永远不会让 History.js 与不支持 onHashChange 事件的浏览器一起使用,因为 History.js 使用 pushState (仅在html5) 表示兼容浏览器,“#hash”表示支持此事件的 html4 浏览器。甚至ie9也使用hash而不是pushState。但是,再说一遍,ie6 和 ie7 都不支持 hash 事件。

关于jquery - History.js 使用 ie6/ie7 恢复状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12682406/

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