html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

实用框架(iframe)操作代码_javascript技巧_

[ ] 已经帮助:人解决问题

常用代码:fyjHTML5中文学习网 - HTML5先行者学习网

<iframe src="http://www.baidu.com" marginwidth="0" marginheight="0" border="0"	scrolling="no" frameborder="0"	width="350" height="270"></iframe><iframe src="http://www.jb51.net/plugins/like.php?href=YOUR_URL"    scrolling="no" frameborder="0"    style="border:none; width:450px; height:80px"></iframe>

javascript访问frame,iframe框架和href的定向fyjHTML5中文学习网 - HTML5先行者学习网

一.framefyjHTML5中文学习网 - HTML5先行者学习网

1.父框架到子框架的引用fyjHTML5中文学习网 - HTML5先行者学习网

知道了上述原理,从父框架引用子框架变的非常容易,即:fyjHTML5中文学习网 - HTML5先行者学习网

window.frames["frameName"];fyjHTML5中文学习网 - HTML5先行者学习网

这样就引用了页面内名为frameName的子框架。如果要引用子框架内的子框架,根据引用的框架实际就是window对象的性质,可以这样实现:fyjHTML5中文学习网 - HTML5先行者学习网

window.frames["frameName"].frames["frameName2"];fyjHTML5中文学习网 - HTML5先行者学习网

这样就引用到了二级子框架,以此类推,可以实现多层框架的引用。fyjHTML5中文学习网 - HTML5先行者学习网

2.子框架到父框架的引用fyjHTML5中文学习网 - HTML5先行者学习网

每个window对象都有一个parent属性,表示它的父框架。如果该框架已经是顶层框架,则window.parent还表示该框架本身。fyjHTML5中文学习网 - HTML5先行者学习网

3.兄弟框架间的引用fyjHTML5中文学习网 - HTML5先行者学习网

如果两个框架同为一个框架的子框架,它们称为兄弟框架,可以通过父框架来实现互相引用,例如一个页面包括2个子框架:fyjHTML5中文学习网 - HTML5先行者学习网

<frameset rows=”50%,50%”>  <frame src=”1.html” name=”frame1″ />  <frame src=”2.html” name=”frame2″ /></frameset>

在frame1中可以使用如下语句来引用frame2:fyjHTML5中文学习网 - HTML5先行者学习网

self.parent.frames["frame2"];fyjHTML5中文学习网 - HTML5先行者学习网

4.不同层次框架间的互相引用fyjHTML5中文学习网 - HTML5先行者学习网

框架的层次是针对顶层框架而言的。当层次不同时,只要知道自己所在的层次以及另一个框架所在的层次和名字,利用框架引用的window对象性质,可以很容易地实现互相访问,例如:fyjHTML5中文学习网 - HTML5先行者学习网

self.parent.frames["childName"].frames["targetFrameName"];fyjHTML5中文学习网 - HTML5先行者学习网

5.对顶层框架的引用fyjHTML5中文学习网 - HTML5先行者学习网

和parent属性类似,window对象还有一个top属性。它表示对顶层框架的引用,这可以用来判断一个框架自身是否为顶层框架,例如:fyjHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
fyjHTML5中文学习网 - HTML5先行者学习网
//判断本框架是否为顶层框架fyjHTML5中文学习网 - HTML5先行者学习网
if(self==top){fyjHTML5中文学习网 - HTML5先行者学习网
    //dosomethingfyjHTML5中文学习网 - HTML5先行者学习网
}fyjHTML5中文学习网 - HTML5先行者学习网
fyjHTML5中文学习网 - HTML5先行者学习网

fyjHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
fyjHTML5中文学习网 - HTML5先行者学习网
if (window.top!=window.self) {fyjHTML5中文学习网 - HTML5先行者学习网
    // dosomethingfyjHTML5中文学习网 - HTML5先行者学习网
}fyjHTML5中文学习网 - HTML5先行者学习网
fyjHTML5中文学习网 - HTML5先行者学习网

改变框架的载入页面fyjHTML5中文学习网 - HTML5先行者学习网

对框架的引用就是对window对象的引用,利用window对象的location属性,可以改变框架的导航,例如:fyjHTML5中文学习网 - HTML5先行者学习网

window.frames[0].location = "1.html";fyjHTML5中文学习网 - HTML5先行者学习网

引用其他框架内的JavaScript变量和函数fyjHTML5中文学习网 - HTML5先行者学习网

在介绍引用其他框架内JavaScript变量和函数的技术之前,先来看以下代码:fyjHTML5中文学习网 - HTML5先行者学习网
fyjHTML5中文学习网 - HTML5先行者学习网

<script language=”JavaScript” type=”text/javascript”><!function hello(){  alert(“hello,ajax!”);}window.hello();//></script>

二.iframefyjHTML5中文学习网 - HTML5先行者学习网

严格上应该是使用frames数组,和 document.all。fyjHTML5中文学习网 - HTML5先行者学习网
fyjHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
fyjHTML5中文学习网 - HTML5先行者学习网
<iframe id=myiframe src=”about:<input type=checkbox name=mycheckbox value=mycheckbox>”></iframe>fyjHTML5中文学习网 - HTML5先行者学习网
<input type=button onclick=”alert(document.frames.myiframe.document.all.mycheckbox.checked)”>fyjHTML5中文学习网 - HTML5先行者学习网
fyjHTML5中文学习网 - HTML5先行者学习网

三.hreffyjHTML5中文学习网 - HTML5先行者学习网

1.链接的 onclick 事件被先执行,其次是 href 属性下的动作(页面跳转,或 javascript 伪链接);fyjHTML5中文学习网 - HTML5先行者学习网
2.假设链接中同时存 在 href 与 onclick,如果想 让 href 属性下的动作不执行,onclick 必须得到一个 false 的返回值。不信,你可以将 goGoogle 函数中的 return false 注释掉;fyjHTML5中文学习网 - HTML5先行者学习网
3.如果页面过长有滚动条,且希望通过链接的 onclick 事件执行操作。应将它的 href 属性设为 javascript:void(0);,而不要 是 #,这可以防止不必要的页面跳动;fyjHTML5中文学习网 - HTML5先行者学习网
4.如果在链接的 href 属性中调用一个有返回值的函数,当前页面的内容将被此函数的返回值代替;fyjHTML5中文学习网 - HTML5先行者学习网
5.在按住Shift键的情况下会有所区别。fyjHTML5中文学习网 - HTML5先行者学习网
6.今天我遇到的问题,在IE6.0里以href的形式访问不到parentNode。fyjHTML5中文学习网 - HTML5先行者学习网
7.尽量不要用javascript:协议做为A的href属性,这样不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放。fyjHTML5中文学习网 - HTML5先行者学习网

如:fyjHTML5中文学习网 - HTML5先行者学习网

<a href=”javascript:void(0)” onclick=”linkChangePwd()”>更改密码</a>fyjHTML5中文学习网 - HTML5先行者学习网

调整框架的高度fyjHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
fyjHTML5中文学习网 - HTML5先行者学习网
window.onload = function() {fyjHTML5中文学习网 - HTML5先行者学习网
 parent.document.getElementById('customiframe').style.height = document.body.clientHeight + "px";fyjHTML5中文学习网 - HTML5先行者学习网
}fyjHTML5中文学习网 - HTML5先行者学习网
fyjHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助