javascript - 运行 'if url contains' 条件函数而不刷新页面

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

我有一个单页应用程序,其中部分网址发生更改,但页面不刷新。

我有一个简单的函数,仅当 URL 中出现“foo”时才需要运行。

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

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

有没有办法可以检测 URL 更改以便运行我的函数?或者更好的方法?相关 URL 不包含哈希,因此 hashchange 不起作用。

最佳答案

您可以使用 while 循环运行,直到找到您需要的内容,如下所示:

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

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

} 

关于javascript - 运行 'if url contains' 条件函数而不刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35930152/

相关文章:

javascript - 从时间戳/字符串转换为日期

php - 从 PHP 页面中抓取 Price Div 类

javascript - 在 Javascript 警告框中的新行中显示 PHP 数组的每个条目

Jquery Datatables - 获取所有行,即使不在当前页面上

c - 这个匹配 URL 的正则表达式有什么问题?

r - RStudio 中 read.table(url...) 出错

url - 如何制作一个仅在特定页面可见的按钮? (创新设置)

javascript - 如何访问 Chrome 的拼写检查词典?

javascript - 如何使用 javascript 更改按钮的主体背景颜色?

javascript - 从计时器函数获取秒数到我的 View