使用历史记录API时更改页面标题?

时间:2013-01-25 10:36:35

标签: javascript html html5 browser-history html5-history

我正在尝试使用HTML5历史记录API,我一直在阅读,即使你应该能够使用它来更改文档的标题,也没有主流浏览器实现这一点

有问题的pushState函数采用以下参数:

history.pushState(state object, title, url);

我不太清楚为什么实现上述功能的浏览器没有实现标题方面,但事情就是如此。

我的问题是,如果我想根据历史记录api更改title属性,那么最好的方法是什么? Firefox至少说它可能在未来的某个时候实现上述方法:

  

Firefox目前忽略了这个参数,虽然它可能会使用它   未来。

https://developer.mozilla.org/en-US/docs/DOM/Manipulating_the_browser_history

这让我想到我放在那里的任何东西都可能与将来决定实现它的浏览器发生冲突。

有没有确定的火灾未来证据,'SEO安全'的方式这样做?或者我应该保留pushState代码,希望浏览器在将来的某个时候实现这一点?

1 个答案:

答案 0 :(得分:5)

您可以使用document.title设置文档标题:

document.title = 'Rob says hello';

只要您使用历史记录API设置的网址可以通过直接请求访问,并且搜索引擎蜘蛛(add a sitemap for those)可以发现这些网址,那么它就不会对搜索引擎优化产生任何影响。