100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 弹出iframe内嵌页面元素到父页面并全屏化测试(code)

弹出iframe内嵌页面元素到父页面并全屏化测试(code)

时间:2021-08-09 06:16:31

相关推荐

弹出iframe内嵌页面元素到父页面并全屏化测试(code)

web前端|html教程

iframe

web前端-html教程

frame和弹窗这些词对于js高手来说都是耳熟能详的东西,作为一个新人来说,还在学习阶段的我就在工作中遇到这么一个奇葩的需求,要在引入的iframe页面里做一个全屏化的功能.

易语言qq网页登陆源码,ubuntu ip6,喉咙痒痒像爬虫,php 链接其它php,教育seo方案lzw

粗略一看,这还不容易,模拟下F11的功能键什么的,于是网上一搜还真有一大堆关于全屏化的案例,遂借来用之.

猴岛论坛源码,ubuntu9.04更新,tomcat后端程序位置,爬虫教程vbs,凉山php网站服务,南沙区第三方seo优化哪家便宜lzw

然后高高兴兴的拿一个没有iframe引入的页面做了个测试页面查看全屏化功能效果,代码如下(fullScreenPage.html):

asp源码网站搭建方法,ubuntu提取空间不够,tomcat吃内存怎么办,linux蜘蛛爬虫工具,php部署到服务器v,360兼职seolzw

Control Tower

$("#full_screen_open").on("click",function(){ requestFullScreen($("#container")[]); $("#font").empty(); $("#font").text("已打开全屏化");});var requestFullScreen = function(element) { var requestMethod = element.requestFullScreen || element.webkitRequestFullScreen || element.mozRequestFullScreen || element.msRequestFullScreen; if (requestMethod) { requestMethod.call(element); } else if (typeof window.ActiveXObject !== "undefined") { var wscript = new ActiveXObject("WScript.Shell"); if (wscript !== null) { wscript.SendKeys("{F11}"); } }}

嗯,我自己觉得这个效果真的是不要太棒了,还做了浏览器兼容(FireFox=mozRequestFullScreen;W3C=requestFullscreen;Chrome等=webkitRequestFullScreen;ie11=msRequestFullscreen)…..

于是,我立马放到项目里,结果是什么样子呢?执行下面的代码(parentPage.html)就知道了….

Control Tower

哦豁,好像没生效,那么为什么呢?

很明显没有起作用,那么怎么办呢?既然引入的子页面iframe不生效,是不是从父页面或许就可以了?

那就赶紧试试找到父类并执行全屏功能,把页面(fullScreenPage.html)改一改,代码如下:

Control Tower

$("#full_screen_open").on("click",function(){ /* 获取父类的document */ var parentDoc = parent.document; /* 定义一个接收元素的变量 */ var thisIframe = null; /* 用jQuery遍历父类的所有iframe,找到我引入的那个iframe,假设我不知道是哪个页面要引入我的iframe,但是引入我的iframe的src肯定会有引入这个页面的名字,所以通过这个去检索,一定能找到引入这个页面的iframe,然后把这个iframe的元素全屏化也就是把原来的页面全屏化 */ $("iframe",window.parent.document).each(function(index,e){ if (e.src.indexOf("fullScreenPage.html") > 0) { thisIframe = e; return false; } }); requestFullScreen(thisIframe); $("#font").empty(); $("#font").text("已打开全屏化");});var requestFullScreen = function(element) { var requestMethod = element.requestFullScreen || element.webkitRequestFullScreen || element.mozRequestFullScreen || element.msRequestFullScreen; if (requestMethod) { requestMethod.call(element); } else if (typeof window.ActiveXObject !== "undefined") { var wscript = new ActiveXObject("WScript.Shell"); if (wscript !== null) { wscript.SendKeys("{F11}"); } }}

哈哈,改了之后发现果然可以了,问题解决。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。