在Javascript中监视window.location URL中的片段更改

时间:2013-01-26 18:40:26

标签: javascript url

如果网址有

,我有两个工作代码来做某事

第一个:

var oldLocation = location.href;
     function() {
          if ( document.location.href.indexOf('#3') > -1 ) {
               $(document).ready(function(){
                  // Do somthing
               oldLocation = location.href
          }
      });

如果我在完整背景滑块的右侧幻灯片上,它允许启动我的动画。问题:如果我刷新此幻灯片有效,但如果我使用幻灯片2上的“下一张幻灯片”按钮访问幻灯片3则无效

第二个:

var oldLocation = location.href;
 setInterval(function() {
      if(location.href != oldLocation) {
           do your action
           oldLocation = location.href
      }
  }, 1000); // check every second

问题:可以正常工作,但每秒重启一次动画

所以有一个混合它们的解决方案

如果我在幻灯片3中,无论我来自哪里,我都希望我的jQuery动画能够启动。

我希望能理解

非常感谢你< 3

1 个答案:

答案 0 :(得分:1)

使用HTML hashchange事件来侦听网址中的更改,因此您无需手动轮询它:

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