我在现有网页中实现了 ajaxify-html5.js 。它使用 jQuery、ScrollTo 和History.js。很棒的东西,效果很好。每个链接都喜欢
<a href="category?id=5">Category 5</a>
在内容窗口中打开,就像它应该的那样。整个事情离完美只有一个问题——当我点击一个使用这样的碎片标识符的链接时:
<a href="category?id=5#pictures">Category 5 - directly to pics</a>
...地址栏中的 URL 发生了应有的变化,但内容没有任何变化。甚至没有 category?id=5 被加载。
据我所见,这被解雇了(来自 ajaxify-html5.js):
History.pushState(null,title,url); // url = "category?id=5#pictures"
但是 statechange 没有(来自同一个文件):
$window.bind('statechange',function(){
我想我可以清理每个网址(删除#hashtag),然后一切都会工作......当然除了让新加载的页面定位在哪里<a name="hashtag"></a>
。不幸的是,网站严重依赖这些......
我的问题是:甚至可以将 ajaxify 与碎片标识符一起使用,后者不受第一个影响吗?