点滴积累【JS】---JS实现动画闪烁效果
效果:
思路:首先获得图片数组,然后做JS定时用setTimeout和setInterval在用显示隐藏实现闪烁效果。
代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
//图片数组
var imgNumber = [];
//20160815添加动画效果
function Init() {
for (var i = 1; i <= 5; i++) {
imgNumber[i] = "image" + i;
}
}
//定时执行
window.setTimeout(aniFun, 1000);
//当前图片序号
var curNumber = 0;
var f = "";
var showOrHide = "";
//动画效果
function aniFun() { //添加图片闪烁效果
showOrHideImage();
window.setTimeout(aniDo, 500);
}
//图片闪烁效果
function showOrHideImage() {
//循环执行
window.setTimeout(hideAllImage, 100);
window.setTimeout(showAllImage, 200);
//循环执行
window.setTimeout(hideAllImage, 300);
window.setTimeout(showAllImage, 400);
}
//执行动画
function aniDo() {
hideAllImage();
curNumber = 0;
//循环执行,
f = window.setInterval(showImage, 500);
}
//隐藏所有图片
function hideAllImage() {
//隐藏所有图片
for (var i = 1; i <= 5; i++) {
if (typeof (document.getElementById(imgNumber[i])) != "undefined") {
document.getElementById(imgNumber[i]).style.display = "none";
}
}
}
//显示所有图片
function showAllImage() {
//显示所有图片
for (var i = 1; i <= 5; i++) {
if (typeof (document.getElementById(imgNumber[i])) != "undefined") {
document.getElementById(imgNumber[i]).style.display = "block";
}
}
}
//显示逐个图片
function showImage() {
curNumber++;
//显示逐个图片
if (curNumber <= 5) {
if (typeof (document.getElementById(imgNumber[curNumber])) != "undefined") {
document.getElementById(imgNumber[curNumber]).style.display = "block";
}
}
else if (curNumber > 6) {
window.clearInterval(f);
aniFun();
}
}
</script>
</head>
<body onload="Init();">
<div style="margin-left: 400px; margin-top: 100px;">
青苹果图片闪烁
<img id="image1" style="display: block" src="Image/111.png" />
<img id="image2" style="display: block" src="Image/222.png" />
<img id="image3" style="display: block" src="Image/333.png" />
<img id="image4" style="display: block" src="Image/444.png" />
<img id="image5" style="display: block" src="Image/555.png" />
</div>
</body>
</html>
Demo下载:
http://files.cnblogs.com/files/xinchun/ShowOrHide.zip
点滴积累【JS】---JS实现动画闪烁效果的更多相关文章
- 点滴积累【JS】---JS实现仿百度模糊搜索效果
效果: HTML代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="In ...
- 点滴积累【JS】---JQuery实现条形统计图,适用于选择题等统计
效果: 思路:前台JS实现动态数据效果,后台可以拼接字符串或者用JSON加载数据 代码: <%@ Page Language="C#" AutoEventWireup=&qu ...
- 点滴积累【JS】---JS小功能(createElement和insertBefore添加div下面的节点)
效果: 代码: <head runat="server"> <title></title> <script type="text ...
- 点滴积累【JS】---JS小功能(onmousedown实现鼠标拖拽div移动)
效果: 思路: 利用onmousedown事件实现拖拽.首先获得鼠标横坐标点和纵坐标点到div的距离,然后当鼠标移动后再用可视区的距离减去横纵坐标与div的距离.然后在判断不让DIV移出可视区,然后再 ...
- 点滴积累【JS】---JS小功能(onmousemove鼠标移动坐标接龙DIV)
效果: 思路: 利用onmousemove事件,然后获取鼠标的坐标,之后把DIV挨个遍历,最后把鼠标的坐标赋给DIV. 代码: <head runat="server"> ...
- 点滴积累【JS】---JS小功能(JS实现模仿微博发布效果)
效果: 思路: 利用多功能浮动运动框架实现微博效果,首先,将textarea中的属性添加到新创建的li里面然后,再将li添加到ul里面,再利用浮动运动框架将数据动态的显示出来. 代码: <hea ...
- 点滴积累【JS】---JS小功能(JS实现多功能缓冲运动框架)
效果: 思路: 首先,多功能框架实现的功能是:css中所有的属性都可以添加进去(也可以把方法作为参数传递过去!),然后进行缓冲运动,比如:物体的高度.长度.颜色.字体大小.透明度等,都可以直接传入参数 ...
- 点滴积累【JS】---JS小功能(JS实现动态添加运动属性)
效果: 思路: 首先遍历div挨个执行onmouseover事件,再设置获取非行间样式.然后编写setInterval计时器框架,框架内容是:将三个参数 div.div属性.div的目标点,分别获得, ...
- 点滴积累【JS】---JS小功能(JS实现多物体缓冲运动)
效果: 思路: 利用setInterval计时器进行运动,offsetWidth实现宽度的变动,在用onmouseover将终点和所选中的DIV放入参数再进行缓冲运动. 代码: <head ru ...
随机推荐
- iOS开源项目:FlatUIKit
FlatUIKit是iOS中具有扁平化风格的UI(Flat UI)组件.FlatUIKit的设计灵感来源于Flat UI和Kyle Miller.FlatUIKit中的组件是通过扩展(category ...
- 设计模式学习--迭代器模式(Iterator Pattern)和组合模式(Composite Pattern)
设计模式学习--迭代器模式(Iterator Pattern) 概述 ——————————————————————————————————————————————————— 迭代器模式提供一种方法顺序 ...
- DICOM:DICOM三大开源库对比分析之“数据加载”
背景: 上一篇博文DICOM:DICOM万能编辑工具之Sante DICOM Editor介绍了DICOM万能编辑工具,在日常使用过程中发现,“只要Sante DICOM Editor打不开的数据,基 ...
- OpenMP 线程同步之临界区
多核/多线程编程中肯定会用到同步互斥操作.除了互斥变量以为,就是临界区. 临界区是指在用一时刻只允许一个线程执行的一段用{...},包围的代码段. 在OpenMP中临界区声明方法如下: #pragma ...
- RS布局问题之块的不完美之完美
早上一来,便传来喜讯...说我们做的报表太美.客户不敢看----于是便开启征程,亲自尝试了一把,如下面的操作,首次运行报表,在不考虑UI美观度的情况下,报表还是 在预测范围内显示的 那么接下来我们选择 ...
- zend studio 13.0.0 安装破解汉化
zend studio 13安装破解汉化步骤 官网原版下载 http://downloads.zend.com/studio-eclipse/13.0.0/ZendStudio-13.0.0-win3 ...
- 【ichartjs】用ichartjs替代Excel做直方图
在 http://www.cnblogs.com/xiandedanteng/p/8717506.html 一文中,最后是用Excel作图,现在用ichartjs替代之. 效果如下: 文件下载: ht ...
- java Socket通信使用BufferedReader和BufferedWriter的注意事项
注意事项:readLine()要求有换行标识,write()要输出换行标识,要调用flush()刷新缓冲区. 以下是取自java socket通信中的一小段代码. BufferedReader rea ...
- 黑马程序员_<<TCP>>
---------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 1. TCP/IP 1.概述 要建立连接, ...
- xmu 1125 越野车大赛(公式推导&&三分)(中等)
xmu 1125.越野车大赛 Description TheBeet正在參加一场越野车大赛.比赛的场地如右图:共分三块.每一块地面的长宽均为N与M,但地表情况不同.越野车在这段路面上的最快速度也不同. ...