js实现网页加载loading的显示
作者:海娃 来源:51windows 发布时间:2007-11-06 12:11:00
相信各位网页爱好者都对网页的loading很感兴趣吧!,想不想知道如何做一个:)
现在给大家介绍一下一种loading的制作..
效果图:
loading效果演示地址:loading.htm
思路:根据源文件下载的进程来实现的,在网页中每隔一部分,加一段代码,来控制一个图片的长度.显示出下载的进程!
javascript(加在源文件的最前面<html><head>之间)
<script language=JavaScript>
var load_line_i=1;
var load_line_n=20;//网页分成的部分
function load_n(txt)
{load_line_i+=400/load_line_n;//400是load层的宽度
window.status="请等待..正在下载XX"+Math.floor(load_line_i/4.00)+"%";//状态栏显示下载百分比
load_txt.innerText=txt+" "+Math.floor(load_line_i/4.00)+"%";//load层显示的文字与百分比
document.all("line").width=load_line_i;//进度条的宽度}
</script>
下载完成后隐藏对话框javascript(同样加在<html><head>)
<script language=JavaScript>
function finish(){
if(confirm("下载完成..关闭对话框吗?"))document.all("load").style.display='none';}
</script>
如果想要下载完成后,不要确认,直接隐藏进度条,把上面的代码去掉
if(confirm("下载完成..关闭对话框吗?"))
把<body>改成
<body onload=finish()>
样式表(加在<head></head>之间)
<style type="text/css">
<!--
body, td, div, table { font-size: 9pt;font-family:Verdana}
#load{font-size: 9pt; cursor: default; position: absolute;
display:block;width:402;height:20;top:expression((document.body.clientHeight-50)/2);left:expression((screen.width-400)/2); display: block; z-index:100;background:#EDECE9}
.px1{border: 1px solid black;}
-->
</style>
此处用到了expression,这个比较有用!不必再用js来调用document.body.clientHeight,
#load是控制ID为load的层,表格等元素.主要是让进度条层所在的位置永远位于窗口的中心!
我个觉得用Verdana字体,大小为9pt比较好。
显示部分:(加在<body></body>之间,body的最前面)
<div id=load>请稍候..
<div class=px1><img id=line src="px.gif" style="background-color: #0000FF" height=10></div>
<div id=load_txt>dd</div>
</div>
说明:我们所看到的效果就是
<img id=line src="px.gif" style="background-color:red" height=10>
其中px.gif可以用一个一象素透明的图片,只要通过样式表来控制进度条的颜色.
正在下载XX:XX改成所要下载的内容!
把上面代码手工加进网页,把源文件平均分别几个部,每个部分加上下面代码:(在body></body>之间)
<script>load_n("正在下载XX:");</script>
分的部分数与上面load_line_n相等,不然下载完成后,会出现超过100%或不足100%
loading效果演示地址:loading.htm
然后试试,看到效果了吗?


猜你喜欢
- 运行多进程 每个子进程的内存空间是互相隔离的 进程之间数据不能共享的互斥锁但是进程之间都是运行在一个操作系统上,进程之间数据不共享,但是共享
- 前言中位数是一个可将数值集合划分为相等的上下两部分的一个数值。如果列表数据的个数是奇数,则列表中间那个数据就是列表数据的中位数;如果列表数据
- 支付宝十年账单上的数字有点吓人,但它统计的项目太多,只是想看看到底单纯在淘宝上支出了多少,于是写了段脚本,统计任意时间段淘宝订单的消费情况,
- 实验目的:用socket 模拟一个微型的web服务器,当py脚本run起后,实微型web server架起了,然后用本地浏览器访问
- 前言对于我这种英语比较差的人来说,无论是敲代码还是看文档,那都是离不开翻译软件的,于是我想自己用python做一个翻译软件,花了一个小时,终
- Swiper是纯javascript打造的滑动特效插件,面向手机、平板电脑等移动终端。Swiper能实现触屏焦点图、触屏Tab切换、触屏多图
- 合并在numpy中合并两个arraynumpy中可以通过concatenate,参数axis=0表示在垂直方向上合并两个数组,等价于np.v
- Python做了一个词云视频,以另一种角度来看小姐姐跳舞制作过程分为以下几个部分1、视频下载首先需要下载一个小姐姐跳舞的视频,这里我用的是
- 遇到这样一个需求,有一张表,要给这张表新增一个字段delta,delta的值等于每行的c1列的值减去上一行c1列的值。我的解决方案,可以通过
- Navicat数据存放位置和备份数据库路径设置navicat的数据库存放位置在什么地方?带着这样的疑问,我们去解决问题,navicat是默认
- 在用wordpress这个博客的时候,我很奇怪的发现,最近写的内容排在第一页,而最早写的成了最后页。这显然有悖逻辑,正常的情况应该是最早写的
- Portable Document Format(可移植文档格式),或者PDF是一种文件格式,可以用于跨操作系统的呈现和文档交换。尽管PDF
- 拷贝副本复制一个二叉树副本,广度优先遍历同时设置两个队列,一个遍历一个复制创建。func Copy(bt *biTree) *biTree
- 问题描述由于画图时plt.title()默认是显示英文,如果我们设置标题为中文,会无法显示,如图:plt.title('训练损失
- 进入:直接输入python即可,如图所示退出:1:输入exit(),回车2:输入quit(),回车3:输入ctrl+z,回车来源:https
- 问题描述:已经用pip install jieba安装好jieba分词工具,但是在Jupyter 里import jieba运行一直提示Im
- 兄弟组件之间的通信同样是在项目中经常会遇到的组件间的通信问题之一, 这种问题的最根本方法就是: 把兄弟组件内部的变量提升到一个中央仓库。借助
- python有时候需要清除字符串前后空格,而字符本身的空格不需要清除掉,那就不能用正则re.sub来实现。这时用到strip()函数用法:s
- python的便利性,使得如今许多软件开发者、黑客都开始使用python打包成exe的方式进行程序的发布,这类exe有个特点,就是可以使用反
- window.onload=function() {&