Javascript使用history.pushState更新窗口位置

时间:2012-05-21 16:44:47

标签: javascript html5 javascript-events

我已将click事件处理程序附加到锚标记checkValid,该标记验证元素并使用setTimeout为0调用实际处理程序[允许浏览器继续执行]。

//Code is just illustration
function checkValid() {
   if(valid) {
       setTimeout(reloadDiv, 0);
   }
}

function reloadDiv() {
  console.log(window.location.href);
}

同一锚标记的默认处理程序使用history.pushState更改窗口位置。

我预计,由于setTimeout(reloadDiv,0),因为我将事件安排到队列末尾,所以我会得到正确的window.location.href

但它没有发生。如果我将setTimeout周期设置为500毫秒它可以正常工作,但这似乎在浏览器和网络速度之间保持不变。当网站使用history.pushState时,是否有更好的方法来获取正确的href网址?

注意:我不拥有执行代码的域

0 个答案:

没有答案