javascript 重新加载 jq页面刷新 - 如何使用jQuery刷新页面?




11 Answers

即使没有jQuery,这应该适用于所有浏览器:

location.reload();
jquery局部刷新 jquery跳转页面 js刷新页面

如何使用jQuery刷新页面?




我想有很多方法可行:

  • window.location.reload();
  • history.go(0);
  • window.location.href=window.location.href;



如果当前页面是由POST请求加载的,您可能想要使用

window.location = window.location.pathname;

代替

window.location.reload();

因为如果在POST请求加载的页面上调用, window.location.reload()将提示确认。




你可能想用

location.reload(forceGet)

forceGet是一个布尔值和可选项。

默认值为false,从缓存重新加载页面。

如果要强制浏览器从服务器获取页面以除去缓存,请将此参数设置为true。

要不就

location.reload()

如果你想快速轻松地进行缓存。




window.location.reload()将从服务器重新加载,并将再次加载所有数据,脚本,图像等。

因此,如果您只想刷新HTML, window.location = document.URL将返回更快,流量更少。 但如果URL中存在哈希(#),则不会重新加载页面。




这是一个使用jQuery异步重新加载页面的解决方案。 它避免了window.location = window.location引起的闪烁。 此示例显示了一个连续重新加载的页面,如仪表板中所示。 它经过了久经考验,并在时代广场的信息显示电视上运行。

<!DOCTYPE html>
<html lang="en">
  <head>
    ...
    <meta http-equiv="refresh" content="300">
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.3/jquery.min.js"></script>
    <script>
    function refresh() {
      $.ajax({
        url: "",
        dataType: "text",
        success: function(html) {
          $('#fu').replaceWith($.parseHTML(html));
          setTimeout(refresh,2000);
        }
      });
    }
    refresh();
    </script>
  </head>
  <body>
    <div id="fu">
      ...
    </div>
  </body>
</html>

笔记:

  • 使用$.ajax直接像$.get('',function(data){$(document.body).html(data)}) 会导致css / js文件被缓存破坏 ,即使你使用cache: true ,这就是我们使用parseHTML的原因
  • parseHTML不会找到一个body标签,所以你的整个身体需要进入一个额外的div,我希望这一天的知识可以帮助你,你可以猜到我们如何为这个div选择id
  • 使用http-equiv="refresh"以防万一javascript / server hiccup出现问题,那么页面将无需重新加载而无需拨打电话
  • 这种方法可能以某种方式泄漏内存, http-equiv刷新修复了这一点



我发现

window.location.href = "";

要么

window.location.href = null;

也刷页面。

这使得重新加载删除任何哈希的页面变得非常容易。 当我在iOS模拟器中使用AngularJS时,这非常好,所以我不必重新运行应用程序。




不需要 jQuery中的任何东西,使用纯JavaScript重新加载页面,只需在location属性上使用reload函数,如下所示:

window.location.reload();

默认情况下,这将使用浏览器缓存(如果存在)重新加载页面...

如果您想强制重新加载页面,只需将值传递给重载方法,如下所示......

window.location.reload(true);

此外,如果您已经在窗口范围内 ,您可以摆脱窗口并执行:

location.reload();



这里的所有答案都很好。 由于问题指定了使用jquery重新加载页面,我只是想为未来的读者添加更多内容。

jQuery是一个跨平台的JavaScript库,旨在简化HTML的客户端脚本。

Wikipedia

所以你会明白jquery或jquery的基础是基于javascript 。 因此,对于简单的事情,使用纯javascript会更好。

但是如果你需要一个jquery解决方案,那就是一个。

$(location).attr('href', '');



简单的Javascript解决方案:

 location = location; 

<button onClick="location = location;">Reload</button>




它是JavaScript中最短的。

location = '';



Related