为iFrame添加动态载入提示优化用户体验

平时开发网站阻止不了使用iFrame框架,然则当网络环境欠好时iFrame内容一直都是直勾勾的加载,而且未加载完成之前还会强行占有一大片空缺区域,体验很不友好!昨天在制作展示导航 WordPress 插件时,把这个问题也一并处置了,其中涉及到了这个 iFrame 动态载入效果,现在纪录一下,顺便分享。

完整代码:

  1. <div style="float: left;width: 205px;font-size: 13px !important;line-height: 20px;" id="loading">
  2.     <img style="floa: left;height: 20px;width: 20px;" src="/loading.gif" />
  3.     同盟导航加载中,请稍后...
  4. </div>
  5. <iframe id="zgboke" onreadystatechange=stateChangeIE(this) onload=stateChangeFirefox(this) style="visibility: hidden;padding: 0px; width: 100%; height="0" src="http://zgboke.com/hutui.html" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
  6. <script language="javascript">
  7.  function stateChangeIE(_frame)
  8.     {
  9.        if (_frame.readyState=="interactive")
  10.      {
  11.           var loader = document.getElementById("loading");
  12.           loader.innerHTML      = "";
  13.           loader.style.display = "none";
  14.           _frame.style.visibility = "visible";
  15.          }
  16.  }
  17.     function stateChangeFirefox(_frame)
  18.       {
  19.           var loader = document.getElementById("loading");
  20.           var f= document.getElementById("zgboke");
  21.           f.height="512";
  22.           loader.innerHTML      = "";
  23.           loader.style.display = "none";
  24.           _frame.style.visibility = "visible";
  25.  }
  26. </script>

以下是依葫芦画瓢的方式:

①、在 iframe 代码之前先插入一个 div 用于 iframe 载入前的显示,除了 id 需要逐一对应,其他自行施展即可。

②、将 iframe 的高度设为 0,并在原有 iframe 的基础上插入加载前和加载后的函数挪用

  1. onreadystatechange=stateChangeIE(this) 
  2. onload=stateChangeFirefox(this)

③、如代码的 8~28 行新增 2 个 js 函数即可,注重上下元素 ID 需要一 一对应;

④、其中 22 和 23 行阻止 iframe 未加载完成的空缺占位,只有加载完成之后,才会将 iframe 的高度还原为 512。
Ps:代码涉及的元素 ID 对应及 CSS 调治,请自行搞定,就不赘述了。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!3308869544
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有猫币奖励和额外收入!

主题镇 WP教程 为iFrame添加动态载入提示优化用户体验 https://zhutizhen.com/14406.html

永远为用户服务的镇长!

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或联络我们。
查看详情

相关文章