onmouseover 事件缩略图片滑动 修正版

简介:
1
#slideshow{ width : 100px ; height : 100px ; position : relative overflow : hidden ;}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
< html  lang = "en" >
< head >
< meta  charset = "utf-8" >
< title >Web Design</ title >
< script  src = "addLoadEvent.js" ></ script >
< link  rel = "stylesheet"  type = "text/css"  href = "10.2.css"  >
< script  src = "10.2.js" ></ script
</ head >
< body >
< h1 >Web Design</ h1 >
< p >These are the things you should know.</ p >
< ol  id = "linklist" >
< li >< a  href = "structure.html" >Structure</ a ></ li >
< li >< a  href = "presentation.html" >Presentation</ a ></ li >
< li >< a  href = "behavior.html" >Behavior</ a ></ li >
</ ol >
< div  id = "slideshow" >
< img  src = "topics.gif"  alt = "building bolcks of web design"  id = "preview"  />
</ div >
</ body >
</ html >
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
function  addLoadEvent(func){     //不管在页面加载完毕执行多少个函数,都应付自如
var  oldonload = window.onload;
if ( typeof  window.onload !=  'function' ){
window.onload = func;
} else {
window.onload =  function (){
oldonload();
func();
}
}
}
function  moveElement(elementID,final_x,final_y,interval){
if (!document.getElementById)  return  false ;
if (!document.getElementById(elementID))  return  false ;
var  elem = document.getElementById(elementID);
if (elem.movement){             
clearTimeout(elem.movement);       //进行复位,防止动画效果产生滞后
}
var  xpos = parseInt(elem.style.left);  //parseInt(string)把字符串里面的数值信息提取出来,因为后面要进行很多算术比较操作。
var  ypos = parseInt(elem.style.top);   //parseFloat(string)可以把带小数的数值(也就是浮点数)提取出来。
if (xpos == final_x && ypos == final_y){
return  true ;
}
if (xpos < final_x){ xpos++;}        //如果xpos小于终点的left,给它加1.
if (xpos > final_x){ xpos--;}        //如果xpos大于终点的left,给它减1.
if (ypos < final_y){ ypos++;}        //如果ypos小于终点的left,给它加1.
if (ypos > final_y){ ypos--;}        //如果ypos大于终点的left,给它减1.
elem.style.left = xpos +  "px" ;
elem.style.top = ypos +  "px" ;
//var  repeat = function() {moveElement(elementID, final_x,final_y,interval)} 
var  repeat =  "moveElement('"  + elementID +  "',"  + final_x +  ","  + final_y +  ","  + interval +  ")"
elem.movement = setTimeout(repeat,interval);  //为元素创建属性movement,element.property = value;
 
}
 
 
function  prepareSlideshow(){
//确保浏览器支持DOM方法。
if (!document.getElementsByTagName)  return  false ;
if (!document.getElementById)  return  false ;
//确保元素存在。
if (!document.getElementById( "linklist" ))  return  false ;
if (!document.getElementById( "preview" ))  return  false ;
//为图片应用样式。
var  preview = document.getElementById( "preview" );
preview.style.position =  "absolute" ;
preview.style.left =  "0px" ;
preview.style.top =  "0px" ;
//取得列表中所有链接。
var  list = document.getElementById( "linklist" );
var  links = list.getElementsByTagName( "a" );
//为mouseover事件添加动画效果。
links[0].onmouseover =  function (){
moveElement( "preview" ,-100,0,10);
}
links[1].onmouseover =  function (){
moveElement( "preview" ,-200,0,10);
}
links[2].onmouseover =  function (){
moveElement( "preview" ,-300,0,10);
}
}
 
addLoadEvent(prepareSlideshow);

本次案例素材:

wKiom1dIRUjDofk4AAAO8DE9jPI584.gif-wh_50

浏览器效果:

wKioL1dIRmaTRgJuAAAkeB6sH9k822.jpg-wh_50

本文转自  小旭依然  51CTO博客,原文链接:http://blog.51cto.com/xuyran/1783925

相关文章
|
8天前
|
人工智能 运维 安全
|
6天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
658 23
|
7天前
|
人工智能 测试技术 API
智能体(AI Agent)搭建全攻略:从概念到实践的终极指南
在人工智能浪潮中,智能体(AI Agent)正成为变革性技术。它们具备自主决策、环境感知、任务执行等能力,广泛应用于日常任务与商业流程。本文详解智能体概念、架构及七步搭建指南,助你打造专属智能体,迎接智能自动化新时代。
|
13天前
|
人工智能 JavaScript 测试技术
Qwen3-Coder入门教程|10分钟搞定安装配置
Qwen3-Coder 挑战赛简介:无论你是编程小白还是办公达人,都能通过本教程快速上手 Qwen-Code CLI,利用 AI 轻松实现代码编写、文档处理等任务。内容涵盖 API 配置、CLI 安装及多种实用案例,助你提升效率,体验智能编码的乐趣。
1064 110
人工智能 数据可视化 数据挖掘
239 0