vue iframe组件封装

界面内嵌iframe时,由空白节点引起底边间距,可设置iframe属性vertical-align:top解决

<template>
  <div v-loading="loading" :style="'height:' + height">
    <iframe
      :src="src"
      frameborder="no"
      style="width: 100%; height: 100%;vertical-align:top"
      scrolling="auto"
    />
  </div>
</template>
<script>
export default {
  props: {
    src: {
      type: String,
      required: true
    },
  },
  data() {
    return {
      height: document.documentElement.clientHeight + "px;",
      loading: true,
      url: this.src
    };
  },
  mounted: function () {
    setTimeout(() => {
      this.loading = false;
    }, 300);
    const that = this;
    window.onresize = function temp() {
      that.height = document.documentElement.clientHeight + "px;";
    };
  }
};
</script>
posted @ 2023-01-16 17:03  年轻浅识  阅读(333)  评论(0)    收藏  举报