首页 > 解决方案 > 使用 Firefox 调整大小时刷新页面

问题描述

我有一个页面,其中包含一些使用 chart.js 制作的图表。如果我使用 chrome,则每次调整页面大小时都会调整图表的大小。但是,对于 Firefox,这不起作用,要使用 Mozilla 调整大小,我需要按 crtl+F5 按钮。我想从代码中做到这一点。我在stackoverflow中找到了一些解决方案,我选择使用它:

<script>
    if (window.onresize){
    window.location.reload(true);
    }
    </script>

我在关闭标签之前写了这个。但是,使用此代码,firefox 会不断刷新页面。有人可以帮助我吗?谢谢!

标签: firefoxresizereload

解决方案


两件事情:

1.这可能是你要找的

    <script>
    var t=0,resizing=false;
    function _reload()
    {
      resizing=false;
      window.location.reload(true);
    }
    window.addEventListener('resize',function(){
      if(!resizing){
        resizing=true;
        t=setTimeout(_reload, 2000);
      }
    });
  </script>
  1. 在使用它之前,您能否确保在您的 chart.js 实例中您使用的是 responsive:true 参数?此外,您可能还需要使用 maintainAspectRatio: true 参数。

推荐阅读