检测 JavaScript 中的 URL 更改

Detect URL change in Javascript

本文关键字:更改 URL 中的 JavaScript 检测      更新时间:2023-09-26

我刚刚尝试了这段代码,它可以很好地检测URL,

<script type="text/javascript"> $(document).ready(function () {
    if(window.location.href.indexOf("#2") > -1) {
       alert("your on slide 2");
    } }); </script>

但不适合我的情况。

实际上,我想将其放在幻灯片中,其工作原理如下: www.slideshow.com/#1, www.slideshow.com/#2... etc

因此,如果我刷新slide 2,则此代码将运行,但如果我通过单击第一张幻灯片上的Next Slide按钮访问此幻灯片,则不会运行此代码。我希望您了解我的问题并帮助我找到解决方案

谢谢!

window.location.hash和onhashchange事件是你要找的。

http://stereointeractive.com/blog/2008/11/21/javascript-get-window-hashanchor-get-link-target/

JavaScript/jQuery - onhashchange 事件解决方法

您可能想使用 pushState API

然后,可以侦听 popstate 事件以查看用户何时导航。

如果你想支持不支持此功能的浏览器,你可能需要一个pushState填充码。