iframe 弹窗(遮罩层 + Iframe实现界面自动显示的示例代码)
iframe 弹窗
遮罩层 + Iframe实现界面自动显示的示例代码前言
这周由于科三的考试耽误了两天,提前一天要去熟悉考场,第二天要考试,好在第二天晚上赶回来了,两天没敲代码就感觉别扭,这周写了点日志系统,写了点作业系统,果然技术还不到家,思路上出了点小问题。
效果
在教师评阅作业时,先把学生的作业展现出来,然后关掉界面进行评分
(用百度主页做演示)
Iframe
iframe 用于在网页内显示网页,实现它的方法有多种:
<iframe src="URL"></iframe>
URL 指向隔离页面的位置,由于当时对src有误解,所以没有选用这种方法。
<iframe src="demo_iframe.htm" name="iframe_a"></iframe> <p><a href="http://www.w3school.com.cn" target="iframe_a">W3School.com.cn</a></p>
要想让iframe显示a标签里链接的内容,就要使得iframe标签里的name属性与a标签里的target属性相等,这样的话,点击a标签的链接就能在iframe里显示相应的内容了。
于是当时的代码是:
<iframe height="500px" width="100%" name="iframe_work"></iframe> <p><a target="iframe_work" style="display: none" [href]="protocol + '//' + (this.work.student.no + '.' + host + '/' + getWorkDir()) | safeUrl" #linkToWork>点击查看</a> </p>
public load() { this.workService.getById({id: this.params.workId}) .subscribe((data) => { this.work = data; this.goToWork(); }, () => { console.log('error'); }); }
goToWork(): void { this.linkToWork.nativeElement.click(); }
当时出来的效果是这样的但是有很大的缺陷,就是显示网页的窗口很小,学生的作业根本看不全,需要拖动底部和侧栏的滚动条。
Iframe + 遮罩层
遮罩层就是为了把下方的界面挡起来,然后让ifream的内容显示在遮罩层上,以实现全屏显示学生作业内容的效果,代码如下:
<li class="mask" *.jpg" alt="iframe 弹窗(遮罩层 + Iframe实现界面自动显示的示例代码)" border="0" />
有关遮罩层的使用可以看一下这个文档:5 定制提示框【前】
问题
利用showPopWindow这个属性控制遮罩层显示与否,后来就出现了这样的问题:
这就说明 #inkToWork 所在的a标签的内容还未渲染出来,那找这个元素就找不到,也就没法实现点击,一开始控制遮罩层的变量为true,但是里面的内容渲染不出来,后来解决了好久,也是不行。
解决
后来晚上开会的时候说了这个问题,才发现这个问题真的挺好解决的,但是自己钻牛角尖了,之前一直以为src加的是文件,现在才知道能加链接,也是当时文档没看太明白吧,后来就改成了这个样子:
<li class="mask" *.jpg" alt="iframe 弹窗(遮罩层 + Iframe实现界面自动显示的示例代码)" border="0" />
总结
在写功能之前,真的要好好看文档,每一种方法都认真看看,不然用的时候真的会吃大亏。
到此这篇关于遮罩层 + Iframe实现界面自动显示的示例代码的文章就介绍到这了,更多相关遮罩层 Iframe界面自动显示内容请搜索开心学习网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持开心学习网!
- iframe 弹窗(遮罩层 + Iframe实现界面自动显示的示例代码)
- css弹出遮罩层页面不可滑动(Html5页面点击遮罩层背景关闭遮罩层)
- 战 疫 时刻 致敬每一位石化大学的 守护者(战疫时刻)
- 老弄堂里的市井味道(老弄堂里的市井味道)
- 小米音乐可绑定QQ音乐, QQ音乐 真的会消失在小米的设备上吗(小米音乐可绑定QQ音乐)
- 小米Watch S1评测 或许能成为小米冲击高端可穿戴设备的里程碑(小米WatchS1评测或许能成为小米冲击高端可穿戴设备的里程碑)
- 手机QQ与小米路由器在一起 明天揭晓,敬请期待(手机QQ与小米路由器在一起)
- 小米音乐与 QQ 音乐合作,便捷迁移会员(小米音乐与QQ音乐合作)
热门推荐
- 百度智能云防火墙(百度云服务器BCC安装宝塔面板图文教程)
- spring-boot 内置tomcat启动(centos环境下使用tomcat 部署SpringBoot的war包)
- 面试问vue掌握程度如何回答(面试最常问的13种Vue修饰符)
- 卸载了云服务器后怎么办(云服务器怎么还原被删除的数据?)
- phpweb添加自定义模板(php静态化页面 htaccess写法详解htaccess怎么写?)
- mysqlexplain各个字段作用(MySQL EXPLAIN语句的使用示例)
- 无盘服务器配置要求(云服务器配置怎么选)
- dedecms添加板块(织梦DedeCMS后台文件列表按文件名排序的方法简介)
- C#中typeof 与GetType()的区别
- 利用前端做扫雷游戏(js实现经典扫雷游戏)