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 相关文章推荐
JS判定是否原生方法
Jul 22 Javascript
jQuery 设置 CSS 属性示例介绍
Jan 16 Javascript
JS中的构造函数详细解析
Mar 10 Javascript
jQuery找出网页上最高元素的方法
Mar 20 Javascript
Bootstrap的图片轮播示例代码
Aug 31 Javascript
详解JavaScript for循环中发送AJAX请求问题
Jun 23 Javascript
JS实现列表的响应式排版(推荐)
Sep 01 Javascript
Angularjs中三种数据的绑定策略(“@”,“=”,“&amp;”)
Dec 23 Javascript
详谈js中标准for循环与foreach(for in)的区别
Nov 02 Javascript
通过jquery.cookie.js实现记住用户名、密码登录功能
Jun 20 jQuery
Node.js Buffer模块功能及常用方法实例分析
Jan 05 Javascript
js实现html滑动图片拼图验证
Jun 24 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
关于PHP5 Session生命周期介绍
2010/03/02 PHP
深入理解php的MySQL连接类
2013/06/07 PHP
PHP基础知识介绍
2013/09/17 PHP
php教程之魔术方法的使用示例(php魔术函数)
2014/02/12 PHP
微信支付开发发货通知实例
2016/07/12 PHP
php编程实现简单的网页版计算器功能示例
2017/04/26 PHP
使用tp框架和SQL语句查询数据表中的某字段包含某值
2019/10/18 PHP
纯JavaScript实现的完美渐变弹出层效果代码
2010/04/02 Javascript
编写js扩展方法判断一个数组中是否包含某个元素
2013/11/08 Javascript
一个获取第n个元素节点的js函数
2014/09/02 Javascript
jQuery向后台传入json格式数据的方法
2015/02/13 Javascript
JavaScript对Cookie进行读写操作实例
2015/07/25 Javascript
基于node实现websocket协议
2016/04/25 Javascript
angular.js指令中的controller、compile与link函数的不同之处
2017/05/10 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
AngularJS select设置默认值的实现方法
2017/08/25 Javascript
javascript  删除select中的所有option的实例
2017/09/17 Javascript
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
jquery操作checkbox的常用方法总结【附测试源码下载】
2019/06/10 jQuery
深度解读vue-resize的具体用法
2020/07/08 Javascript
Python实现网站文件的全备份和差异备份
2014/11/30 Python
Python3中简单的文件操作及两个简单小实例分享
2017/06/18 Python
python编写暴力破解zip文档程序的实例讲解
2018/04/24 Python
python中ASCII码字符与int之间的转换方法
2018/07/09 Python
超简单使用Python换脸实例
2019/03/27 Python
基于python的socket实现单机五子棋到双人对战
2020/03/24 Python
django数据关系一对多、多对多模型、自关联的建立
2019/07/24 Python
django使用admin站点上传图片的实例
2019/07/28 Python
利用python生成照片墙的示例代码
2020/04/09 Python
django 模型字段设置默认值代码
2020/07/15 Python
python中pyqtgraph知识点总结
2021/01/26 Python
matplotlib之多边形选区(PolygonSelector)的使用
2021/02/24 Python
沙龙级头发造型工具:FOXYBAE
2018/07/01 全球购物
升职自荐信范文
2015/03/27 职场文书
高中信息技术教学反思
2016/02/16 职场文书
使用Apache Camel表达REST服务的方法
2022/06/10 Servers