vue组件中使用iframe元素的示例代码


Posted in Javascript onDecember 13, 2017

本文介绍了vue组件中使用iframe元素的示例代码,分享给大家,具体如下:

需要在本页面中展示vue组件中的超链接,地址栏不改变的方法:

<template>
 <div class="accept-container">
   <div class="go-back" v-show="goBackState" @click="goBack">GoBack</div>
<ul>
 <li v-for="item in webAddress">
  <a :href="item.link" rel="external nofollow" target="showHere" @click="showIframe">{{item.name}}</a>
 </li>
</ul>
<iframe v-show="iframeState" id="show-iframe" frameborder=0 name="showHere" scrolling=auto src=""></iframe>
 </div>
</template>
<script>
export default {
 name: 'hello',
 data () {
 return {
  iframeState:false,
  goBackState:false,
  webAddress: [
  {
   name:'segmentFault',
   link:'https://segmentfault.com/a/1190000004502619'
  },
  {
   name:'博客',
   link:'http://vuex.vuejs.org/'
  },
  {
   name:'特效',
   link:'http://www.yyyweb.com/377.html'
  }
  ]
 }
 },
 mounted(){
 const oIframe = document.getElementById('show-iframe');
 const deviceWidth = document.documentElement.clientWidth;
 const deviceHeight = document.documentElement.clientHeight;
 oIframe.style.width = deviceWidth + 'px';
 oIframe.style.height = deviceHeight + 'px';
 },
 methods:{
 goBack(){
  this.goBackState = false;
  this.iframeState = false;
 },
 showIframe(){
  this.goBackState = true;
  this.iframeState = true;
 }
 }
}
</script>
<style scoped>
</style>

需要使同层元素不被覆盖,可以加

<iframe id="dialogFrame" frameborder="0" scrolling="no" style="background-color:transparent; position: absolute; z-index: -1; width: 100%; height: 100%; top: 0;left:0;"></iframe>

不过html5有新的dialog元素用于对话框。

iframe的一些方法:

获取iframe内容:

var iframe = document.getElementById("iframe1");
 var iwindow = iframe.contentWindow;
 var idoc = iwindow.document;
  console.log("window",iwindow);//获取iframe的window对象
  console.log("document",idoc); //获取iframe的document
  console.log("html",idoc.documentElement);//获取iframe的html
  console.log("head",idoc.head); //获取head
  console.log("body",idoc.body); //获取body

自适应 iframe:

即1去掉滚动条,2设置宽高

var iwindow = iframe.contentWindow;
var idoc = iwindow.document;
iframe.height = idoc.body.offsetHeight;

例子:

<iframe id="google_ads_frame2" name="google_ads_frame2" width="160" height="600" frameborder="0" src="target.html" marginwidth="0" marginheight="0" vspace="0" hspace="0" allowtransparency="true" scrolling="no" allowfullscreen="true"></iframe>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery tools系列 expose 学习
Sep 06 Javascript
LazyLoad 延迟加载(按需加载)
May 31 Javascript
zTree插件之单选下拉菜单实例代码
Nov 07 Javascript
js全屏显示显示代码的三种方法
Nov 11 Javascript
ext前台接收action传过来的json数据示例
Jun 17 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
Jul 15 Javascript
Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果
May 27 Javascript
jQuery实现在新增加的元素上添加事件方法案例分析
Feb 09 Javascript
JavaScript创建对象的四种常用模式实例分析
Jan 11 Javascript
使用 node.js 模仿 Apache 小部分功能
Jul 07 Javascript
JS多个表单数据提交下的serialize()应用实例分析
Aug 27 Javascript
node.JS事件机制与events事件模块的使用方法详解
Feb 06 Javascript
vue中路由验证和相应拦截的使用详解
Dec 13 #Javascript
vue实现nav导航栏的方法
Dec 13 #Javascript
vue实现导航栏效果(选中状态刷新不消失)
Dec 13 #Javascript
仿京东快报向上滚动的实例
Dec 13 #Javascript
Angular2使用vscode断点调试ts文件的方法
Dec 13 #Javascript
vue-router路由懒加载和权限控制详解
Dec 13 #Javascript
JS+canvas画一个圆锥实例代码
Dec 13 #Javascript
You might like
DC四月将推出百页特刊漫画 纪念小丑诞生80周年
2020/04/09 欧美动漫
ThinkPHP自定义Redis处理SESSION的实现方法
2016/05/16 PHP
PHP页面间传递值和保持值的方法
2016/08/24 PHP
Zend Framework入门教程之Zend_Session会话操作详解
2016/12/08 PHP
文字幻灯片
2006/06/26 Javascript
js prototype 格式化数字 By shawl.qiu
2007/04/02 Javascript
jQuery中find()方法用法实例
2015/01/07 Javascript
angular route中使用resolve在uglify压缩后问题解决
2016/09/21 Javascript
12 款 JS 代码测试必备工具(翻译)
2016/12/13 Javascript
jQuery扩展+xml实现表单验证功能的方法
2016/12/25 Javascript
Angular排序实例详解
2017/06/28 Javascript
vue 路由懒加载中给 Webpack Chunks 命名的方法
2020/04/24 Javascript
jQuery 淡入/淡出效果函数用法分析
2020/05/19 jQuery
vuecli3.x中轻松4步带你使用tinymce的步骤
2020/06/25 Javascript
简介Python中用于处理字符串的center()方法
2015/05/18 Python
详解Python中的静态方法与类成员方法
2017/02/28 Python
Python 稀疏矩阵-sparse 存储和转换
2017/05/27 Python
Python编程实现及时获取新邮件的方法示例
2017/08/10 Python
解决python给列表里添加字典时被最后一个覆盖的问题
2019/01/21 Python
Python多进程方式抓取基金网站内容的方法分析
2019/06/03 Python
Win10下python 2.7与python 3.7双环境安装教程图解
2019/10/12 Python
关于tf.nn.dynamic_rnn返回值详解
2020/01/20 Python
套娃式文件夹如何通过Python批量处理
2020/08/23 Python
python实现按日期归档文件
2021/01/30 Python
Canvas 文本转粒子效果的实现代码
2019/02/14 HTML / CSS
检测浏览器是否支持html5视频的代码
2013/03/28 HTML / CSS
美国正宗奢华复古手袋、珠宝及配饰网站:What Goes Around Comes Around
2018/07/21 全球购物
美国医生配方营养补充剂供应商:Healthy Directions
2019/07/10 全球购物
FC-Moto丹麦:欧洲最大的摩托车服装和头盔商店之一
2019/08/20 全球购物
电钳专业个人求职信
2014/01/04 职场文书
刘胡兰的英雄事迹材料
2014/02/11 职场文书
英语国培研修感言
2014/02/13 职场文书
学校食堂食品安全责任书
2014/07/28 职场文书
绿色小区申报材料
2014/08/22 职场文书
2016优秀毕业生个人事迹材料
2016/02/29 职场文书
SpringBoot中使用Redis作为全局锁示例过程
2022/03/24 Java/Android