问题:iframe标签加载有时需要蛮长的时间,而如果什么内容都不展示就会导致用户体验极差,需要根据iframe的加载时间来判断loading加载图标的时间
解决:判断iframe是否加载完成,同时支持IE ,可以用 onload 事件,但IE需要通过 attachEvent 来注册。
// 加载中loading
<div v-loading="iframeloading" style="width: 230px; height: 395px;">
<iframe
id="ifra"
:src="articleSrc"
style="width: 230px; height: 395px; overflow-y:hidden; overflow: hidden"
frameborder="0"
/>
// 判断iframe是否加载完成
iframeLoad() {
var _this = this
const iframe = document.querySelector('#ifra')
// 处理兼容行问题 兼容IE
if (iframe.attachEvent) {
iframe.attachEvent('onload', function() {
// iframe加载完毕以后执行操作
console.log('iframe已加载完毕')
_this.iframeloading = false
})
} else {
iframe.onload = function() {
// iframe加载完毕以后执行操作
console.log('iframe已加载完毕')
_this.iframeloading = false
}
}
},
上图