当前位置: 首页 > 编程日记 > 正文

“画中画”效果--谈IFRAME标签的使用

作者:秋实 文章来源:天极网页陶吧

纵观时下网站,本来网速就有些慢,可是几乎每页都要放什么Banner,栏目图片,版权等一大堆雷同的东西,当然,出于网站风格统一、广告效应的需要,本无可厚非,可毕竟让用户的钱包为这些“点缀“的东西”日益消得钱憔悴”了,有没有办法,让这些雷同的东西一次下载后就不用再下载,而只下载那些内容有变化区域的网页内容呢?
答案很肯定:应用Iframe标记!

一、Iframe标记的使用

提起Iframe,可能你早已将之扔到“被遗忘的角落”了,不过,说起其兄弟Frame就不会陌生了。Frame标记即帧标记,我们所说的多帧结构就是在一个浏览器窗口中显示多个HTML文件。现在,我们遇到一种很现实的情况:如有一个教程,是一节一节地上,每页末尾做一个“上一节“、“下一节“的链接,除了每节教程内容不同之外,页面其它部分内容都是相同的,如果一页一页地做笨页面,这似乎太让人厌烦了,这时突发奇想,如果有一种方法让页面其它地方不变,只将教程做成一页一页的内容页,不含其它内容,在点击上下翻页链接时,只改变教程内容部分,其它保持不变,这样,一是省时,另则以后如教程有个三长两短的变动,也很方便,不致于牵一发而动全军了;更重要的是将那些广告Banner、栏目列表、导航等几乎每页的都有的东西只下载一次后就不再下载了。 Iframe标记,又叫浮动帧标记,你可以用它将一个HTML文档嵌入在一个HTML中显示。它不同于Frame标记最大的特征即这个标记所引用的HTML文件不是与另外的HTML文件相互独立显示,而是可以直接嵌入在一个HTML文件中,与这个HTML文件内容相互融合,成为一个整体,另外,还可以多次在一个页面内显示同一内容,而不必重复写内容,一个形象的比喻即“画中画“电视。

现在我们谈一下Iframe标记的使用。

Iframe标记的使用格式是:

<Iframe src="URL" width="x" height="x" scrolling="[OPTION]" frameborder="x"></iframe>
src:文件的路径,既可是HTML文件,也可以是文本、ASP等;
width、height:"画中画"区域的宽与高;
scrolling:当SRC的指定的HTML文件在指定的区域不显不完时,滚动选项,如果设置为NO,则不出现滚动条;如为Auto:则自动出现滚动条;如为Yes,则显示;
FrameBorder:区域边框的宽度,为了让“画中画“与邻近的内容相融合,常设置为0。

比如:

<Iframe src="http://netschool.cpcw.com/homepage";; width="250" height="200" scrolling="no" frameborder="0"></iframe>

二、父窗体与浮动帧之间的相互控制 在脚本语言与对象层次中,包含Iframe的窗口我们称之为父窗体,而浮动帧则称为子窗体,弄清这两者的关系很重要,因为要在父窗体中访问子窗体或相反都必须清楚对象层次,才能通过程序来访问并控制窗体。

1、在父窗体中访问并控制子窗体中的对象

在父窗体中,Iframe即子窗体是document对象的一个子对象,可以直接在脚本中访问子窗体中的对象。

现在就有一个问题,即,我们怎样来控制这个Iframe,这里需要讲一下Iframe对象。当我们给这个标记设置了ID 属性后,就可通过文档对象模型DOM对Iframe所含的HTML进行一系列控制。

比如在example.htm里嵌入test.htm文件,并控制test.htm里一些标记对象:
<Iframe src="test.htm" id="test" width="250" height="200" scrolling="no" frameborder="0"></iframe>
test.htm文件代码为:
<html>
<body>
<h1 id="myH1">hello,my boy</h1>
</body>
</html>
如我们要改变ID号为myH1的H1标记里的文字为hello,my dear,则可用:
document.myH1.innerText="hello,my dear"(其中,document可省)
在example.htm文件中,Iframe标记对象所指的子窗体与一般的DHTML对象模型一致,对对象访问控制方式一样,就不再赘述。

2、在子窗体中访问并控制父窗体中对象

在子窗体中我们可以通过其parent即父(双亲)对象来访问父窗口中的对象。
如example.htm:
<html>
<body οnclick="alert(tt.myH1.innerHTML)">
<Iframe name="tt" src="frame1.htm" width="250" height="200" scrolling="no" frameborder="0"></iframe>
<h1 id="myH2">hello,my wife</h1>
</body>
</html>
如果要在frame1.htm中访问ID号为myH2中的标题文字并将之改为"hello,my friend",我们就可以这样写:
parent.myH2.innerText="hello,my friend"
这里parent对象就代表当前窗体(example.htm所在窗体),要在子窗体中访问父窗体中的对象,无一例外都通过parent对象来进行。

Iframe虽然内嵌在另一个HTML文件中,但它保持相对的独立,是一个“独立王国“哟,在单一HTML中的特性同样适用于浮动帧中。

试想一下,通过Iframe标记,我们可将那些不变的内容以Iframe来表示,这样,不必重复写相同的内容,这有点象程序设计中的过程或函数,减省了多少繁琐的手工劳动!另外,至关重要的是,它使页面的修改更为可行,因为,不必因为版式的调整而修改每个页面,你只需修改一个父窗体的版式即可了。

有一点要注意,Nestscape浏览器不支持Iframe标记,但在时下IE的天下,这似乎也无大碍,广泛采用Iframe标记,既为自己(网站)着了想,又为网友节省了网费,何乐而不为?

例子:
<iframe src="页面" width="宽度"  height="高度" align="排列可以是left或right,center" scrolling="是否有滚动条可以填no或yes"   ></iframe>

<IFRAME frameBorder=0 frameSpacing=0 height=25 marginHeight=0 marginWidth=0 scrolling=no name=main src="bgm/bgm.html" width=300></IFRAME>
2:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
用了iframe后 发现滚动条不漂亮 想用2个图片来代替↑↓

应该怎么实现呢?
回答:
用下列代码替换网页的<title>..</title>
<SCRIPT LANGUAGE="javascript">
function scroll(n)
{temp=n;
Out1.scrollTop=Out1.scrollTop+temp;
if (temp==0) return;
setTimeout("scroll(temp)",80);
}
</SCRIPT>
<TABLE WIDTH="330">
<TR>
<TD WIDTH="304" VALIGN="TOP" ROWSPAN="2" >
<DIV ID=Out1 STYLE="width:100%; height:100;overflow: hidden ;border-style:dashed;border-width: 1px,1px,1px,1px;">
文字<BR> 文字<BR>
文字<BR>
文字<BR>
文字
<BR>
<BR>
</DIV>
</TD>
<TD WIDTH="14" VALIGN="TOP"><IMG SRC="photo/up0605.gif" WIDTH="14" HEIGHT="20" οnmοuseοver="scroll(-1)" οnmοuseοut="scroll(0)" οnmοusedοwn="scroll(-3)" BORDER="0" ALT="按下鼠标速度会更快!"></TD>
</TR>
<TR>
<TD WIDTH="14" VALIGN="BOTTOM"><IMG SRC="photo/down0605.gif" οnmοuseοver="scroll(1)" οnmοuseοut="scroll(0)"  οnmοusedοwn="scroll(3)" BORDER="0" WIDTH="15" HEIGHT="21" ALT="按下鼠标速度会更快!"></TD>
</TR>
</TABLE>

相关文章:

Cognitive Inference:认知推理下的常识知识库资源、常识推理测试评估与中文实践项目索引...

作者 | 刘焕勇责编 | 李雪敬出品 | CSDN博客CognitiveInferenceCognitive Inference&#xff0c;认知推理、常识知识库、常识推理与常识推理评估的系统项目&#xff0c;以现有国内外已有的常识知识库为研究对象&#xff0c;从常识知识库资源建设和常识推理测试评估两个方面出发…

敏捷开发实践总结(二):关于测试

用了两个冲刺周期&#xff0c;我们组算是把敏捷开发的测试流程给捋顺了。这里对我们的测试&#xff0c;以及敏捷开发中的测试做一个小结。一、开发组一定不能讳疾忌医。作为开发人员&#xff0c;一定要秉着这个出发点去看待测试。业务测试测试组测试&#xff0c;自测&#xff0…

手机网站的几点注意

http://www.haorooms.com/post/phone_web转载于:https://www.cnblogs.com/momox/p/6252679.html

HEAD元素使用集锦

作者&#xff1a;火焰鸟 文章来源&#xff1a;大众网络报 HTML文档由两部分组成&#xff1a;Head&#xff08;主题部分&#xff0c;一般来说是不可见的&#xff09;和Body&#xff08;正文部分&#xff0c;在浏览器中是可见的&#xff09;。随着FrontPage及Dreamweaver&…

10 个 Python 工程师,9 个不合格!

毋庸置疑&#xff0c;Python越来越被认可为程序员新时代的风口语言。无论是刚入门的程序员&#xff0c;还是年薪百万的 BATJ 的大牛都无可否认&#xff1a;Python的应用能力是成为一名码农大神的必要项。 所以&#xff0c;很多程序员把Python当做第一语言来学习。 但对于Python…

使用谷歌jquery库文件的理由

使用谷歌jquery库文件的理由 最近看到&#xff0c;那些引用jquery的文件那些网站&#xff0c;好多是使用谷歌的库&#xff1b;像这样的<script type”text/javascript”src”http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js“></script>(最近发展…

apache性能测试工具ab使用详解

网站性能压力测试是服务器网站性能调优过程中必不可缺少的一环。只有让服务器处在高压情况下&#xff0c;才能真正体现出软件、硬件等各种设置不当所暴露出的问题。性能测试工具目前最常见的有以下几种&#xff1a;ab、http_load、webbench、siege。今天我们专门来介绍ab。ab是…

HTML-加速、再加速

作者&#xff1a;听风 文章来源&#xff1a;eNet技术学院web开发人员是否必须掌握复杂的组件技术才能加快html页面的访问速度&#xff1f;答案是&#xff1a;不一定&#xff01;实际上&#xff0c;有许多关于HTML与DHTML方面的技巧&#xff0c;它们原理简单而且上手容易。无…

ECCV 2020 | 对损失信息进行建模,实现信号处理高保真还原

编者按&#xff1a;信号在我们的日常生活中随处可见&#xff0c;例如&#xff1a;声音、图像、视频等。然而在信号的传输或存储过程中&#xff0c;往往会面临信号失真、质量变差等问题。今天这篇文章就来探讨一下信号处理中的信息丢失问题&#xff0c;其中包括微软亚洲研究院机…

斯坦佛编程教程-Unix编程工具(四)

emacs 下面将会简单的介绍一个叫做emacs的文本编辑器&#xff0c;它是由GNU组织提供的自由软件。它是一个非常优秀的编译器&#xff0c;并且&#xff0c;它能很好地和其他UNIX工具整合在一起。很多编辑器都有着非常多的理由来说明他们多优秀&#xff0c;但是这里我们就不讨论这…

addTwoNumbers

大神的代码好短&#xff0c;自己写的120多行_ 各种判断 ListNode *f(ListNode *l1, ListNode *l2) {ListNode *p1 l1;ListNode *p2 l2;ListNode *res new ListNode(0);ListNode *p3 res;int sum 0;while (p1 ! NULL || p2 ! NULL) { //这里用“或”sum / 10; //进位if (p1…

长江存储推消费级固态硬盘,Xtacking技术加持

9月10日&#xff0c;一直专注于to B的长江存储推出致钛系列两款消费级固态硬盘(SSD)新品&#xff0c;分别为PCIe接口PC005 Active和SATA接口SC001 Active&#xff0c;兼具强劲的性能和可靠的品质&#xff0c;并由Xtacking技术加持。目前两款产品现已登陆京东预售&#xff0c;两…

停电后,JavaScript定时器居然变慢了~

小停了会电。除了有点热&#xff0c;对于用笔记本的我们来说毫无损失。 不过&#xff0c;一件诡异的事却在这短短几分钟里遇到了&#xff1a;用 IE 测试 JavaScript 代码的时候&#xff0c;发现setInterval的频率变成了60帧/秒。 这在老版本的IE上面是再正常不过了。不过对于与…

HTML4.0标准语法--字体

◇ 标题字体(Header) <h#> ... </h#> #1, 2, 3, 4, 5, 6 <h1>今天天气真好&#xff01;</h1> 今天天气真好&#xff01; <h2>今天天气真好&#xff01;</h2> 今天天气真好&#xff01; <h3>今天天气真好&#xff01;</h3>…

Tomcat 7.x热部署

由于在开发阶段&#xff0c;需要频繁的修改源代码&#xff0c;如果每次修改完代码都去重启服务器来检测效果&#xff0c;那简直麻烦到你想死&#xff0c;又耽误时间&#xff0c;所以&#xff0c;在网上找了许久&#xff0c;终于找到了解决办法&#xff0c; 特来分享 我也试了修…

机器学习中,梯度下降算法的问题引入

来源 | 动画讲编程今天讲解的内容是梯度下降算法。梯度下降算法在机器学习中的应用十分广泛&#xff0c;该算法的最主要目的是通过迭代的方法找到目标函数的最小值&#xff0c;经常用来解决线性回归和逻辑回归等相关问题。本节课主要讲解梯度下降算法解决一元线性回归问题&…

HTML4.0标准语法--文字布局

◇行的控制 段(Paragraph) (可以看作是空行) <p> 你好吗&#xff1f;<p>很好。 你好吗&#xff1f; 很好。 换行 <br> 你好吗&#xff1f;<br>很好。 你好吗&#xff1f;很好。 不换行<nobr> <nobr> 请改变您浏览器窗口的宽度&#x…

poj(2325)线段树

这里介绍另外一种解法&#xff0c;此题可以用线段树&#xff0c;可以用树状数组 其实这题求的都是下面的和左面的&#xff0c;线段树这种数组结构刚好可以满足&#xff0c;为什么呢&#xff1f;这里稍微解释下吧&#xff0c;也有助于以后的复习 看上面这个图&#xff0c;[1,1]&…

2017-1-7 html元素分类(1)

html元素分类结构性元素 section 在web页面应用中&#xff0c;该元素也可以用于区域的章节描述 header 页面主体的头部 footer 页面的底部 nav 专门用于菜单的导航、链接导航的元素 article 用于表示一篇文章的主体内用块级元素 aside 泳衣表达注记、贴士、侧栏、摘要的引用等作…

MyEclipse使用技巧小总结

1、 自动提示&#xff1a;窗口->首选项->Java->编辑器->内容辅助->自动激活&#xff0c;在下面的“Java的自动激活触发器里面填上“.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789”。 2、 加快自动提示的时间&#xff1a;窗口->首选项…

开放源码,华为鸿蒙HarmonyOS 2.0来了

作者 | Just出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;去年8月&#xff0c;鸿蒙HarmonyOS一经发布&#xff0c;在开发者群体中引发强烈反响。有人赞赏华为的战略和技术&#xff0c;但也有不少人质疑那只是个PPT操作系统&#xff0c;凡此种种&#xff0c;热议不断…

纯CSS实现对白框

如果一个盒子的长宽都为零&#xff0c;那么它的四条border就会碰到一起&#xff0c;变成实心的&#xff0c;而且每一条border都是一个三角形&#xff1b;我们就可以利用三角形来实现对白框的尖下巴。 通过把border上左设置为有颜色&#xff0c;下右设置为透明&#xff0c;在#de…

HTML4.0标准语法--表格

表格的色彩 表元的背景色彩和背景图象<th bgcolor#> <th background"URL"> #rrggbb 16 进制 RGB 数码, 或者是下列预定义色彩名称&#xff1a;Black, Olive, Teal, Red, Blue, Maroon, Navy, Gray, Lime, Fuchsia, White, Green, Purple, Silver, Yello…

能力差的程序员90%输在这点上!CTO:其实都是瞎努力!

在大数据浪潮当中&#xff0c;数据分析是这个时代的不二“掘金技能”。我们每一个人&#xff0c;每天无时无刻都在生产数据&#xff0c;一分钟内&#xff0c;微博上新发的数据量超过10万&#xff0c;b站的视频播放量超过600万......这些庞大的数字&#xff0c;意味着什么&#…

zendframwork入口关键Zend_Application.php类

为什么80%的码农都做不了架构师&#xff1f;>>> 推荐阅读&#xff1a;http://www.cnblogs.com/rexy/archive/2010/05/13/1734406.html 里面有详细的类图关系&#xff0c;UML图。。。 转载于:https://my.oschina.net/wufa/blog/71634

2017伊始-随笔

微信小程序发布 今天&#xff0c;2017年1月9日&#xff0c;微信的小程序发布了。我打开了美团外卖小程序&#xff0c;然后把美团外卖app卸载了&#xff1b;我打开了摩拜单车小程序&#xff0c;然后把摩拜单车app卸载了。有人问&#xff0c;这种小程序与网页版的桌面图标有什么区…

广告条随滚动条的移动而移动

文章来源&#xff1a;蓝色理想<html><head><title>跟随滚动条的图片</title><meta http-equiv"Content-Type" content"text/html; charsetgb2312"><STYLE mediascreen typetext/css>#floater { POSITION: abs…

使用wget在linux服务器上下载oracle软件

今天需要在远程几台服务器上安装oracle软件&#xff0c;本地的网络不是很好&#xff0c;如果同本地下载&#xff0c;然后再上传到服务器上比较耗时。所以就想直接在服务器上直接下载软件&#xff0c;这样不光速度比较快&#xff0c;而且还节省了很多时间。 我是这样做的。 首先…

揭秘华为AI一站式开发平台,3步构建一个AI模型 | 华为昇腾师资培训沙龙西安场...

2018 年&#xff0c;在第三届 HUAWEI CONNECT&#xff08;华为全联接大会&#xff09;上&#xff0c;华为首次公布了 AI 战略与全栈全场景 AI 解决方案&#xff0c;其中包含全球首个覆盖全场景人工智能的华为昇腾&#xff08;Ascend&#xff09;系列处理器以及基于华为昇腾全栈…

PYTHON黑帽编程1.5 使用WIRESHARK练习网络协议分析

Python黑帽编程1.5 使用Wireshark练习网络协议分析 1.5.0.1 本系列教程说明 本系列教程&#xff0c;采用的大纲母本为《Understanding Network Hacks Attack and Defense with Python》一书&#xff0c;为了解决很多同学对英文书的恐惧&#xff0c;解决看书之后实战过程中遇…