温馨提示×

history.pushState与hashbang区别

小樊
81
2024-06-29 10:57:26
栏目: 编程语言

history.pushState是HTML5 History API中的一个方法,用于在不刷新页面的情况下改变浏览器地址栏中的URL,并且可以添加历史记录。这个方法一般与popstate事件结合使用,以便在浏览器的前进后退按钮被点击时能够正确地处理页面状态。

而hashbang是指URL中以"#“号开头并且跟随一个”!"号的一种格式,如:http://example.com/#!/page。在过去,hashbang被用来实现前端路由,通过监听hashchange事件来改变页面内容而不引起页面刷新。但现在,随着HTML5 History API的普及,hashbang逐渐被淘汰,因为它有一些缺点,比如URL不够友好、SEO不友好等。

总的来说,history.pushState是一种更加先进且灵活的方式来改变URL而不刷新页面,而hashbang则是一种过时的方式。

0