在没有页面刷新的情况下运行'if url contains'条件函数

时间:2016-03-11 00:39:17

标签: javascript jquery url if-statement single-page-application

我有一个单页应用,其中部分网址发生了变化,但页面没有刷新。

我有一个需要运行的简单函数,只有当'foo'在URL中显示时才会运行。

这显然不起作用,因为它只在第一次加载页面时运行,而'foo'可能还没有。

if (window.location.href.indexOf("foo") > -1) {
//stuff
}

有没有办法可以检测到网址更改才能运行我的功能?还是更好的方法?有问题的URL不包含哈希值,因此hashchange不起作用。

1 个答案:

答案 0 :(得分:0)

你可以使用一个运行的while循环,直到它找到你需要的东西:

var found =false;
while(found == false){

    if (window.location.href.indexOf("foo") > -1) {
    //stuff
        found = true;
        //more code 
     }

}