Javascript 更改HTML4浏览器的History.js的行为

Javascript 更改HTML4浏览器的History.js的行为,javascript,history.js,html4,Javascript,History.js,Html4,我使用history.js插件()在打开页面时为页面上的元素提供一个特定的唯一url 正如所料,这在HTML5浏览器中非常有效,但该插件并没有达到我在HTML4浏览器(换句话说,Internet Explorer)中所需要的效果 基本上,我遇到了与插件文档中概述的相同的陷阱,如下所示: 如果使用哈希,这些问题是不可避免的 如果我们不从主页开始,URL就会被污染 虽然,我的url没有这么糟糕,但除了抛出散列,url是可用的。在最后删除suid也很好,因为在我的情况下这是不必要的,但是如果不

我使用history.js插件()在打开页面时为页面上的元素提供一个特定的唯一url

正如所料,这在HTML5浏览器中非常有效,但该插件并没有达到我在HTML4浏览器(换句话说,Internet Explorer)中所需要的效果

基本上,我遇到了与插件文档中概述的相同的陷阱,如下所示:

如果使用哈希,这些问题是不可避免的

如果我们不从主页开始,URL就会被污染

虽然,我的url没有这么糟糕,但除了抛出散列,url是可用的。在最后删除suid也很好,因为在我的情况下这是不必要的,但是如果不可能的话应该可以

以下是我的URL需要的外观:

这就是IE中的结果:

据我从文档中了解,我唯一的选择是禁用HTML4回退,这意味着IE中不会发生任何事情

我想知道是否有一种方法可以放弃HTML4回退选项,但仍然使用HTML5解决方案(以相同的方式更改url,只是使用不同的方法..我知道用于HTML5解决方案的方法不起作用)。或者,如果有任何其他方法可以改变HTML4解决方案的实现方式,使其适应本项目的需要


更新:在我自己的研究中,我似乎发现不使用哈希就不可能改变兼容HTML4的浏览器的url。我目前正在将一些变通方法集成到我的项目中,以便我们的URL使用哈希。我仍然没有回答这个问题,因为这不是一个真正的答案,我甚至不知道我是否100%正确。

如果仍然需要,清洁URL的部分答案是下面的解决方案。 请尝试下面有关的代码


强制历史记录不附加suid

你能用字符串方法清理url吗?我想我可以,但可能需要对插件有深入的了解才能这样做,因为所有转换都是在插件内动态进行的。
History.options.disableSuid