博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript 刷新页面 关闭窗口[转]
阅读量:6542 次
发布时间:2019-06-24

本文共 3842 字,大约阅读时间需要 12 分钟。

下面以三个页面分别命名为frame.html、top.html、bottom.html为例来具体说明如何做。

frame.html 由上(top.html)下(bottom.html)两个页面组成,代码如下:

 1
<!
DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
>
 2
<
html
>
 3
<
head
>
 4
    
<
title
>
frame 
</
title
>
 5
</
head
>
 6
<
frameset 
rows
="50%,50%"
>
 7
<
frame 
name
=top 
src
="top.html"
>
 8
<
frame 
name
=bottom 
src
="bottom.html"
>
 9
</
frameset
>
10
</
html
>

现在假设top.html (即上面的页面) 有七个button来实现对bottom.html (即下面的页面) 的刷新,可以用以下七种语句,哪个好用自己看着办了。

语句1. window.parent.frames[
1
].location.reload();
语句2. window.parent.frames.bottom.location.reload();
语句3. window.parent.frames[
"
bottom
"
].location.reload();
语句4. window.parent.frames.item(
1
).location.reload();
语句5. window.parent.frames.item(
'
bottom
'
).location.reload();
语句6. window.parent.bottom.location.reload();
语句7. window.parent[
'
bottom
'
].location.reload();

top.html 页面的代码如下:

 1
<!
DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
>
 2
<
html
>
 3
<
head
>
 4
    
<
title
>
top.html 
</
title
>
 5
</
head
>
 6
<
body
>
 7
    
<
input 
type
="button"
 value
="刷新1"
 onclick
="window.parent.frames[1].location.reload()"
><
br
>
 8
    
<
input 
type
="button"
 value
="刷新2"
 onclick
="window.parent.frames.bottom.location.reload()"
><
br
>
 9
    
<
input 
type
="button"
 value
="刷新3"
 onclick
="window.parent.frames['bottom'].location.reload()"
><
br
>
10
    
<
input 
type
="button"
 value
="刷新4"
 onclick
="window.parent.frames.item(1).location.reload()"
><
br
>
11
    
<
input 
type
="button"
 value
="刷新5"
 onclick
="window.parent.frames.item('bottom').location.reload()"
><
br
>
12
    
<
input 
type
="button"
 value
="刷新6"
 onclick
="window.parent.bottom.location.reload()"
><
br
>
13
    
<
input 
type
="button"
 value
="刷新7"
 onclick
="window.parent['bottom'].location.reload()"
><
br
>
14
</
body
>
15
</
html
>

下面是bottom.html页面源代码,为了证明下方页面的确被刷新了,在装载完页面弹出一个对话框。

bottom.html 页面的代码如下:

 1
<!
DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
>
 2
<
html
>
 3
<
head
>
 4
    
<
title
>
bottom.html 
</
title
>
 5
</
head
>
 6
<
body 
onload
="alert('我被加载了!')"
>
 7
    
<
h1
>
 8
        This is the content in bottom.html.
</
h1
>
 9
</
body
>
10
</
html
>

解释一下:

1.window指代的是当前页面,例如对于此例它指的是top.html页面。
2.parent指的是当前页面的父页面,也就是包含它的框架页面。例如对于此例它指的是framedemo.html。
3.frames是window对象,是一个数组。代表着该框架内所有子页面。
4.item是方法。返回数组里面的元素。
5.如果子页面也是个框架页面,里面还是其它的子页面,那么上面的有些方法可能不行。
附:
Javascript刷新页面的几种方法:

1
history.go(
0
)
2
location.reload()
3
location
=
location
4
location.assign(location)
5
document.execCommand(
'
Refresh
'
)
6
window.navigate(location)
7
location.replace(location)
8
document.URL
=
location.href

自动刷新页面的方法:

1.页面自动刷新:把如下代码加入<head>区域中

<
meta 
http-equiv
="refresh"
 content
="20"
>

其中20指每隔20秒刷新一次页面.

2.页面自动跳转:把如下代码加入<head>区域中

<
meta 
http-equiv
="refresh"
 content
="20;url=http://www.wyxg.com"
>

其中20指隔20秒后跳转到页面

3.页面自动刷新js版

1
ExpandedBlockStart.gif
ContractedBlock.gif
<
script 
language
="JavaScript"
>
2function myrefresh()
3ExpandedSubBlockStart.gifContractedSubBlock.gif{
4window.location.reload();
5}
6setTimeout('myrefresh()',1000); //指定1秒刷新一次
7
</
script
>

ASP.NET如何输出刷新父窗口脚本语句

1
this
.response.write(
"
<script>opener.location.reload();</script>
"
); 
2
this
.response.write(
"
<script>opener.window.location.href = opener.window.location.href;</script>
"
); 
3
Response.Write(
"
<script language=javascript>opener.window.navigate(''你要刷新的页.asp'');</script>
"
)
4

JS刷新框架的脚本语句

//如何刷新包含该框架的页面用 
<
script 
language
=JavaScript
>
parent.location.reload();
</
script
>
 
//子窗口刷新父窗口
<
script 
language
=JavaScript
>
self.opener.location.reload();
</
script
>
( 或 
<
href
="javascript:opener.location.reload()"
>
刷新
</
a
>
 )
//如何刷新另一个框架的页面用 
<
script 
language
=JavaScript
>
parent.另一FrameID.location.reload();
</
script
>

如果想关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可。

1
<
body 
onload
="opener.location.reload()"
>
 开窗时刷新
2
<
body 
onUnload
="opener.location.reload()"
>
 关闭时刷新
3
4
ExpandedBlockStart.gifContractedBlock.gif
<
script 
language
="javascript"
>
5window.opener.document.location.reload()
6
</
script
>

 

转载于:https://www.cnblogs.com/qiangshu/archive/2009/11/12/1601564.html

你可能感兴趣的文章
数据库迁移工具
查看>>
【喜报】HCIE--PASS !最可怕的敌人,就是没有坚强的信念!
查看>>
2019年人工智能行业又进入冬天了吗?
查看>>
想学前端,为什么不看这些书呢?
查看>>
记一次mapreduce读取不到输入文件的问题
查看>>
我的友情链接
查看>>
MariaDB集群Galera Cluster的研究与测试
查看>>
SONY控制键盘JX-11,EVI-D70P控制方案
查看>>
项目经理必备 - 项目绩效测量工具EVM详解(上)
查看>>
Spring AOP 之二:Pointcut注解表达式
查看>>
在普通台式机上搭建服务器虚拟化架构Esxi平台
查看>>
电话线路 30B+D 名词解释
查看>>
python字典嵌套字典实例
查看>>
吉炬消费系统软件输入密码后无法打开软件界面故障处理
查看>>
Hibernate学习系列————注解一对多双向实例
查看>>
Cannot load from mysql.proc
查看>>
网络运维之 EX4200消除var分区使用过高的告警
查看>>
【最好的流程是没有流程】
查看>>
Apache Thrift 教程
查看>>
Python Epoll
查看>>