功能实现:

(1)设定图片称号的鼠标悬停事件;

(2)在事件中利用自定义动画函数调整显示图片,并修改对应标号样式;

(3)为图片显示区域设定鼠标悬停事件;

(4)当鼠标停在该区域时,清除图片切换动画定时器;

(5)当鼠标离开该区域时,重启图片切换动画,每隔2秒换一张图片;

效果图:

(垂直滚动)实现代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="../js/jquery-3.2.1.min.js" ></script>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
.imgarea img{
width: 100%;
height: 100%;
}
.content{
width: 306px;
height: 156px;
}
.main{
width: 300px;
height: 150px;
border: 1px solid #CCCCCC;
overflow: hidden;
}
.imgarea{
position: relative;
} .imgarea li{
list-style: none;
width: 300px;
height: 150px;
}
.imgID{
position: absolute;
top: 130px;
}
.imgID li{
float: left;
list-style: none;
width: 30px;
height: 20px;
border: solid 1px #CCCCCC;
/*background-color: aliceblue;*/ }
.active{
background-color: bisque;
}
</style>
</head>
<body>
<div class="content">
<div class="main">
<ul class="imgarea">
<li><a href="#"><img src="../img/0.jpg"/></a></li>
<li><a href="#"><img src="../img/1.jpg"/></a></li>
<li><a href="#"><img src="../img/2.jpg"/></a></li>
<li><a href="#"><img src="../img/3.jpg"/></a></li>
</ul>
<ul class="imgID">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
</div>
</div>
</body>
<script type="text/javascript">
$(function(){
var index = 0;
var timer;
$(".imgID li").mouseover(function(){ //图片标号的鼠标悬停事件
index = $(".imgID li").index(this); //获取图片标号的索引值
animateImg(index); //显示与索引值匹配的图片
}).eq(0).mouseover();
$('main').hover(function(){ //图片显示区域的鼠标悬停事件
clearInterval(timer); //清除定时器
},function(){
timer = setInterval(function(){ //设定定时器,循环显示每张图片
animateImg(index);
index++;
if (index == $(".imgID > li").length) {
index = 0;
}
},2000);
}).trigger("mouseleave"); });
function animateImg(index){
var divh = $(".content .main").height();
//利用动画效果调整图片列表行高
$(".imgarea").stop(true,false).animate({top:-divh*index},1000);
//改变图片标号样式
$(".imgID li").removeClass("active").eq(index).addClass("active"); }
</script>
</html>

(水平滚动)实现代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>水平滚动</title>
<script type="text/javascript" src="../js/jquery-3.2.1.min.js" ></script> </head>
<body>
<div id="scrollarea" style="overflow: hidden;width:500px ;">
<table border="0" align="center">
<tr>
<td id="area1" valign="top" bgcolor="#ffffff">
<table border="0" cellspacing="0" cellpadding="0">
<tr align="center">
<td>
<a href="#" target="_blank">
<img src="../img/0.jpg" width="335" height="260" alt="第一张图"/>
</a>
</td>
<td>
<a href="#" target="_blank">
<img src="../img/1.jpg" width="335" height="260" alt="第二张图"/>
</a>
</td>
<td>
<a href="#" target="_blank">
<img src="../img/2.jpg" width="335" height="260" alt="第三张图"/>
</a>
</td>
<td>
<a href="#" target="_blank">
<img src="../img/3.jpg" width="335" height="260" alt="第四张图"/>
</a>
</td>
</tr> </table>
</td>
<td id="area2" valign="top"></td>
</tr> </table>
</div> <script type="text/javascript">
var timer;
$("#area2").html($("#area1").html());
function imgMarquee(){
if ($("#scrollarea").scrollLeft() >= $("#area1").width()) {
$("#scrollarea").scrollLeft(0);
}else{
$("#scrollarea").scrollLeft($("#scrollarea")).scrollLeft(5);
}
}
$("#scrollarea").hover(function(){
clearInterval(timer);
},function(){
timer = setInterval(imgMarquee(),10);
});
</script>
</body>
</html>

【Demo】jQuery 轮播图简单动画效果的更多相关文章

  1. 封装bt轮播图淡入淡出效果样式

    <!--BT轮播图-->    <div data-ride="carousel" class="carousel slide carousel_inn ...

  2. 超级简单的jquery轮播图demo

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. 基于skitter的轮播图炫酷效果,幻灯片的体验

    概述 包含各种炫酷的轮播切换效果,插件小巧,与其他插件无冲突,可用于移动端和PC端 详细 代码下载:http://www.demodashi.com/demo/11939.html 你还在用原生的js ...

  4. jQuery轮播图(一)轮播实现并封装

    利用面向对象自己动手写了一个封装好的jquery轮播组件,可满足一般需求,不仅使用简单且复用性高. demo:点此预览 代码地址:https://github.com/zsqosos/componen ...

  5. Jquery 轮播图简易框架

    =====================基本结构===================== <div class="carousel" style="width: ...

  6. jQuery轮播图(手动点击轮播)

    下面来看看最终做的手动点击轮播效果: 一.原理说明 (1)首先是轮播图的架构,我采用了一个最外边的大div包住两个小div,一个小div里面放四张图片,另一个小div里面放四个数字按钮 (2)对最外边 ...

  7. jQuery轮播图(二)利用构造函数和原型创建对象以实现继承

    本文是在我开始学习JavaScript继承时,对原型继承的一些理解和运用.文中所述的继承方式均是使用js特有的原型链方式,实际上有了ES6的类之后,实现继承的就变得十分简单了,所以这种写法现在也不在推 ...

  8. jquery 轮播图实例

    实现效果:1.图片每2秒钟切换1次. 2.当鼠标停留在整个页面上时,图片不进行轮播. 3.当点击右下角的小球时,出现该选项的对应图片,而且切换页选项的背景颜色发生相应的变化. 4.当图片发生轮播切换时 ...

  9. jQuery轮播图--不使用插件

    说明:引入jquery.min.js    将轮播图放入imgs文件夹 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...

随机推荐

  1. JavaScript:学习笔记(8)——对象扩展运算符

    JavaScript:学习笔记(8)——扩展运算符 对象的扩展运算符 扩展运算符是三个点(...).用于取出参数对象的所有可遍历属性,然后拷贝到当前对象之中. 如上图所示,新建了一个对象a,然后通过扩 ...

  2. Linux优雅退出问题

    问题:Springboot框架开发的项目中会内嵌tomcat容器,在杀死进程的时候tomcat为被正常杀死,导致端口未被释放,第二次启动的时候报端口冲突. 先讲一个基本概念:如何在shell中终止一个 ...

  3. 10 Linux Commands Every Developer Should Know

    转载:http://azer.bike/journal/10-linux-commands-every-developer-should-know/ As a software engineer, l ...

  4. DOM—节点

    节点的相关属性 1.nodeType:节点类型.返回的是一个数字,这个数字代表节点类型,只读. 节点类型: 1 — 元素类型:元素节点(标签) 节点类型: 2 — 元素类型:属性节点 节点类型: 3 ...

  5. 20145316《Java程序设计》实验二报告

    20145316<Java程序设计>实验二报告 一.实验目的与要求 1.初步掌握单元测试和TDD. 2.理解并掌握面向对象三要素:封装.继承.多态. 3.初步掌握UML建模. 4.熟悉S. ...

  6. U盘在制作Ubuntu启动盘后Windows系统下显示空间不对的解决办法(Ubuntu系统下格式化U盘的方法)

    用Ubuntu系统自带的启动盘制作工具后,将U盘拿到Windows系统下使用显示出的空间与U盘大小不同. 解决该问题的办法: 使用Linux终端: 第一步:sudo fdisk -l 这个命令主要是查 ...

  7. cmd中测试常用到的命令汇总

    1.最常用的 ping +ip 2.测试到远程服务器之间是否通的命令 telnet +ip +端口 3.路由跟踪,通过跟踪可以找到到哪地方不通 tracert ip      linux系统  tra ...

  8. 高通camera结构【转】

    本文转载自:http://www.cnblogs.com/whw19818/p/5853407.html 摄像头基础介绍 一.摄像头结构和工作原理. 拍摄景物通过镜头,将生成的光学图像投射到传感器上, ...

  9. 【VS Error】VS2008在编译时出现:Error 15 Cannot register assembly

    现象: 在visual studio 2008在编译类库时提示如下错误: Error 15 Cannot register assembly "D:\01_Work\02_SVN\OCRpl ...

  10. Jquery10 高级事件

    学习要点: 1.模拟操作 2.命名空间 3.事件委托 4.on.off 和 one jQuery 不但封装了大量常用的事件处理,还提供了不少高级事件方便开发者使用.比如模拟用户触发事件.事件委托事件. ...