Day10-------photoAlbum

 //---------使用了z-index和复杂的时间控制完成了照片簿的功能,兼容各大浏览器 //----测试结果-----不知道为什么换成IE之后变得移动特别特别慢,可能是渲染的问题 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5 <title>photoAlbum</title>
 6 </head>
 7 <style type="text/css">
 8     #box{width: 600px;height: 300px;overflow: hidden;left:350px;top:100px;position: absolute;}
 9     img{width: 500px;height: 300px;position: absolute;}
10     span{height: 300px;width: 20px;position: absolute;background: #BBB;z-index: 3;}
11 </style>
12 <script type="text/javascript">
13     window.onload=function(){
14         var color=["#ABC","#BCD","#CDE","#DEF","#789","#456"];
15         var timer;
16         var order=-1;
17         var iSpeed=0;
18         var flag=0;
19         var snapCount=0;
20         oDiv=document.getElementById(‘album‘);
21         oImg=document.getElementsByTagName(‘img‘);
22         oSpan=document.getElementsByTagName(‘span‘);
23         oImg[0].style.zIndex=1;
24         function homing(offset){
25             oImg[order+1].style.left=oDiv.offsetLeft+order*20+20+offset+‘px‘;
26             oSpan[order].style.left=oDiv.offsetLeft+order*20+offset+‘px‘;
27         }
28         function move(){
29             if((oSpan[order].offsetLeft>=order*20+oDiv.offsetLeft&&iSpeed<0)||(oSpan[order].offsetLeft<=order*20+500+oDiv.offsetLeft&&iSpeed>0)){
30                 oImg[order+1].style.left=oImg[order+1].offsetLeft+iSpeed+‘px‘;
31                 oSpan[order].style.left=oSpan[order].offsetLeft+iSpeed+‘px‘;
32             }
33             else{
34                 if(iSpeed<0)    homing(0);
35                 else if(iSpeed>0)    homing(500);
36                 clearInterval(timer);
37                 flag=1;
38             }
39         }
40         for(count=0;count<oSpan.length;count++){
41             oSpan[count].style.left=oDiv.offsetLeft+500+count*20+‘px‘;
42             oSpan[count].style.backgroundColor=color[count];
43             oSpan[count].index=count;
44             oSpan[count].onmouseover=function(){
45                 if(this.index==order){
46                     if(flag==0) return false;
47                     else iSpeed=-iSpeed;
48                 }
49                 else if(this.index>order){
50                     iSpeed=-4;
51                     oImg[this.index+1].style.left=oDiv.offsetLeft+520+this.index*20+‘px‘;
52                     if(order!=-1)    homing(0);
53                 }
54                 else {
55                     iSpeed=4;
56                     oImg[this.index+1].style.left=oDiv.offsetLeft+20+this.index*20+‘px‘;
57                     homing(500);
58                 }
59                 flag=0;
60                 clearInterval(timer);
61                 for(snapCount=0;snapCount<oImg.length;snapCount++)    {oImg[snapCount].style.zIndex=0;}
62                 order=this.index;
63                 oImg[this.index].style.zIndex=1;
64                 oImg[this.index+1].style.zIndex=2;
65                 for(snapCount=0;snapCount<this.index;snapCount++)oSpan[snapCount].style.left=snapCount*20+oDiv.offsetLeft+‘px‘;
66                 for(snapCount++;snapCount<oSpan.length;snapCount++)    oSpan[snapCount].style.left=snapCount*20+oDiv.offsetLeft+500+‘px‘;
67                 timer=setInterval(function(){move();},10);
68             }
69         }
70     }
71 </script>
72 <body>
73 <div id="box">
74     <div id="album">
75         <img src="pic/photo0.jpg">
76         <img src="pic/photo1.jpg">
77         <img src="pic/photo2.jpg">
78         <img src="pic/photo3.jpg">
79         <img src="pic/photo4.jpg">
80         <img src="pic/photo5.jpg">
81         <span>相片一</span>
82         <span>相片二</span>
83         <span>相片三</span>
84         <span>相片四</span>
85         <span>相片五</span>
86     </div>
87 </div>
88 </body>
89 </html>
时间: 2024-11-08 11:22:56

Day10-------photoAlbum的相关文章

#在蓝懿学习iOS的日子#Day10

#在蓝懿学习iOS的日子#Day10今天做了一个大的游戏,涵盖了这段时间学洗的知识,页面的切换字符串,还有可变数组和遍历等知识点. 1.显示搭建视图添加背景,创建一个选择hero视图,添加一个button点击进入下一个选择hero视图: 2.在hero视图搭建视图添加背景,创建一个英雄hero类,把不同的英雄j连接进同一个button,设置tag用以区分hero类:在点击button进入游戏页面, 3.在游戏页面添加移动的背景视图, -(void)initBG{ //添加背景图片 self.bg

DAY-10作业

(**)写一个函数交换两个结构体变量 (**)有一学生数组写一函数打印出指定分数段的学生信息 (**)有一学生数组,包含5个学生,写一个函数,对学生排序(按学号 从小到大),使用结构体指针操作数组元素 (**)有一学生数组,包含5个学生,写一个函数,对学生排序(按姓名 从小到大),使用结构体指针操作数组元素 (**)有一学生数组,包含5个学生,写一个函数,对学生排序(按分数 从小到大),使用结构体指针操作数组元素 声明部分 struct student { long number; char n

MFC DAY10 11 12

一 MFC对话框 1 DoModal函数的执行过程 1.1 查找和加载对话框资源 1.2 将父窗口设置为不可用状态 1.3 创建和显示对话框 1.4 进入对话框的消息循环 1.5 点击OK或者Cancel或者关闭按钮,隐藏对话框窗口 1.6 将父窗口设置为可用的和活动的 1.7 销毁对话框窗口 1.8 释放对话框资源 1.9 返回执行结果(IDOK/IDCANCEL) 二 对话框数据交换技术(DDX) 引入对话框数据交换技术的目的方便的操作控件.将对话框类的 成员变量与对话框的控件绑定,通过操作

黑马day10 jdbc入门&amp;mysql

JDBC的定义:JDBC就是sun公式定义的一类接口,可以供mysql,oracle等公司实现接口. 需要导入mysql的jar包 实现JDBC的步骤: 1.注册数据库驱动 2.获取数据库连接(可以把他想象成一个高速公路) 3.获取传输器对象(把他想象成一个高速公路行驶的汽车) 4.利用传输器传输sql语句到数据库宗执行,获取结果集 5.遍历结果集 6.关闭资源(先创建的后关闭,后创建的先关闭) 案例一: 在数据库中创建数据库: create database day10; use day10;

python自动化运维之路~DAY10

python自动化运维之路~DAY10 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

Python 元组day10

Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup1 = ('physics', 'chemistry', 1997, 2000);tup2 = (1, 2, 3, 4, 5 );tup3 = "a", "b", "c", "d"; 创建空元组 tup1 = (); 元组中只包含一个元素时,需要在元素

Python小白-day10 memcache&redis

Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信. Python操作Memcached 1.第一次操作 import memcache   mc = memcache.Clie

黑马day10 增加&amp;删除&amp;更新到数据库mysql

下面是在day10数据库下的表user进行操作的. 如果是更改了数据那么就使用Statement 中的executeUpdate()方法.如果是查询就使用executeQuery()方法. 案例: package cn.itheima.jdbc; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import org.jun

C++MFC编程笔记day10 MF界面控件的使用2、属性页对话框、MFC线程

一 树型控件 1 相关类 CTreeCtrl-父类是CWnd,控件类. CTreeView-父类是CCtrlView,视图类.CTreeView=CView+CTreeCtrl CTreeView::GetTreeCtrl 2 CTreeCtrl的使用 对比CListCtrl:列表控件的每个数据项之间是平等关系,通过数据项 的索引值得到数据项的信息.树控件每个数据项称之为节点.节点之间 的关系包括父子关系和兄弟关系.通常通过节点句柄得到某个节点. 通常用来表示层次关系的数据. 2.1 设置控件的

标C编程笔记day08~day10代码规范、编译、库函数、命名空间、函数调用、哑元函数

代码编写规范,命令行编译,库函数简介,命名空间介绍,函数调用介绍,哑元函数介绍 一般来说,有.c实现文件,应该都要有.h头文件,.c文件中的所有函数都应该在.h文件中声明. 命令行编译方法: 1.gcc 后面带所有.c 文件 -o 输出文件名   直接生成可执行文件 2.依次gcc -c .c文件  -o ***.o  生成***.o文件 然后 gcc 所有.o文件 -o 输出文件   生成可执行文件 程序中的静态全局变量不可以被其他文件中的语句使用. .c文件使用.h文件中的全局变量:exte