vue 嵌入iframe页面,获取iframe元素修改样式

94 篇文章 7 订阅
93 篇文章 1 订阅
<template>
  <div class="workbench-container">
    <div v-if="idDev" style="width:100%;height:100px">
      <div style="margin-left:-162px;margin-top:-90px;">
        <iframe
          id="iFrame"
          ref="iframes"
          class="workbench-iframe"
          :height="heightH"
          :src="workbenchSrc"
          frameborder="0"
        />
      </div>
    </div>
  </div>
</template>

<script>
export default {
  name: 'WorkBench',
  data() {
    return {
      workbenchSrc: ''
    }
  },
  computed: {
    heightH: function() {
      const windowH = document.documentElement.clientHeight + 'px'
      return windowH
    },
    idDev: () => {
      return process.env.NODE_ENV === 'production'
    }
  },
  mounted() {
    this.workbenchSrc = location.protocol + '//' + location.host + '/portal/ztzx_workbench'
    if (this.idDev) {
      this.$nextTick(() => {
        const iframe = window.frames['iFrame']
        const handleLoad = () => {
          setTimeout(() => {
            const Do = (iframe.contentWindow || iframe.contentDocument)
            Do.document.getElementsByClassName('menu_wp')[0].style.display = 'none'
          }, 500)
        }
        iframe.addEventListener('load', handleLoad, true)
      })
    }
  }
}
</script>

<style lang="scss" scoped>
.workbench {
  &-container {
    margin: 30px;
  }
  &-text {
    font-size: 30px;
    line-height: 46px;
  }
  &-iframe {
    width: 100%;
    margin-left: calc(0% - 14px);
  }
}

</style>

 

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周家大小姐.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值