在iframe中加载Power BI报表时,消除闪烁

时间:2019-07-15 22:20:27

标签: javascript html iframe powerbi flicker

我正在尝试构建一个实时仪表板,该仪表板每15秒刷新一次。我已经使用直接查询创建了一个报告,该报告在每次重新加载报告时都会刷新数据集。我希望刷新能够无缝进行,而无需用户注意Power BI报表必须在浏览器中刷新。

我尝试了本文中的说明:http://codecorner.galanter.net/2016/05/05/flicker-free-iframe-refresh/

<html>
<iframe id="xIfrWidget0" width="100%" height="100%" style="display:none"></iframe>
<iframe id="xIfrWidget1" width="100%" height="100%" style="display:none"></iframe>

  <script type="text/javascript">
 var ifrNo = 0;
var ifrHidden;
var ifr;

function swap() 
{

   ifr = document.getElementById('xIfrWidget' + ifrNo);
   ifrNo = 1 - ifrNo;
   ifrHidden = document.getElementById('xIfrWidget' + ifrNo);

   ifr.onload = null;

   ifrHidden.onload = function() {

      ifr.style.display = 'none';
      ifrHidden.style.display = 'block';


   }

      ifrHidden.src = "https://app.powerbi.com/reportEmbed?reportId=...";    
}

setInterval(function () 
{
   swap();
}, 15000)
</script>
</html>

使用这种当前方法,您仍然可以看到视觉效果正在屏幕上加载。我希望无缝进行刷新,而无需用户注意到Power BI报表必须在浏览器中刷新。

0 个答案:

没有答案