【Demo】jQuery 轮播图简单动画效果
功能实现:
(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 轮播图简单动画效果的更多相关文章
- 封装bt轮播图淡入淡出效果样式
<!--BT轮播图--> <div data-ride="carousel" class="carousel slide carousel_inn ...
- 超级简单的jquery轮播图demo
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 基于skitter的轮播图炫酷效果,幻灯片的体验
概述 包含各种炫酷的轮播切换效果,插件小巧,与其他插件无冲突,可用于移动端和PC端 详细 代码下载:http://www.demodashi.com/demo/11939.html 你还在用原生的js ...
- jQuery轮播图(一)轮播实现并封装
利用面向对象自己动手写了一个封装好的jquery轮播组件,可满足一般需求,不仅使用简单且复用性高. demo:点此预览 代码地址:https://github.com/zsqosos/componen ...
- Jquery 轮播图简易框架
=====================基本结构===================== <div class="carousel" style="width: ...
- jQuery轮播图(手动点击轮播)
下面来看看最终做的手动点击轮播效果: 一.原理说明 (1)首先是轮播图的架构,我采用了一个最外边的大div包住两个小div,一个小div里面放四张图片,另一个小div里面放四个数字按钮 (2)对最外边 ...
- jQuery轮播图(二)利用构造函数和原型创建对象以实现继承
本文是在我开始学习JavaScript继承时,对原型继承的一些理解和运用.文中所述的继承方式均是使用js特有的原型链方式,实际上有了ES6的类之后,实现继承的就变得十分简单了,所以这种写法现在也不在推 ...
- jquery 轮播图实例
实现效果:1.图片每2秒钟切换1次. 2.当鼠标停留在整个页面上时,图片不进行轮播. 3.当点击右下角的小球时,出现该选项的对应图片,而且切换页选项的背景颜色发生相应的变化. 4.当图片发生轮播切换时 ...
- jQuery轮播图--不使用插件
说明:引入jquery.min.js 将轮播图放入imgs文件夹 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...
随机推荐
- 创建Java不可变型的枚举类型Gender
创建Java不可变型的枚举类型,其实例如下: // 创建不可变型的枚举类 enum Gender { // 此处的枚举值必须调用对应的构造器来创建 MALE("男"), FEMAL ...
- 推荐系统第4周--- 基于频繁模式的推荐系统和关联规则挖掘Apriori算法
数据挖掘:关联规则挖掘
- sqlserver2008自动备份,自动删除较早的别分文件
1.自动备份数据库 完成时候可以在维护计划中看到这个计划任务(xxxback),同事在作业里面会有个类似名称的作业(sql代理要启动,才能自动执行). 2.自动删除较早的备份文件 邮件选择上面的维护计 ...
- http协议中post方法发出请求
package com.chinaums.szm.test.base.igoodful; import com.fasterxml.jackson.databind.ObjectMapper;impo ...
- PKU 2559 Largest Rectangle in a Histogram(单调栈)
题目大意:原题链接 一排紧密相连的矩形,求能构成的最大矩形面积. 为了防止栈为空,所以提前加入元素(-1,0) #include<cstdio> #include<stack> ...
- 跨域问题-cors
什么是跨域如大家所知,出于安全考虑,浏览器会限制脚本中发起的跨站请求.比如,使用 XMLHttpRequest 对象发起 HTTP 请求就必须遵守同源策略(same-origin policy). 具 ...
- python之路 django基础
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- 【VS2015】未能创建 Visual C# 2015编译器
今天在安装完成Visual Studio 2015后,在执行update 3时出错,导致再次打开VS2015时提示错误:“未能创建 Visual C# 2015编译器”和“未能正确加载CSharpPa ...
- Python面试题之列表推导式
题目要求: 生成如下列表 [[0,0,0,0,0,],[0,1,2,3,4,],[0,2,4,6,8,],[0,3,6,9,12,]] (考察列表生成式和基本逻辑推理) 方法1: list1 = [] ...
- Kafka学习之(三)Centos下给PHP开启Kafka扩展(rdkafka)
Centos版本:Centos6.4,PHP版本:PHP7. 在上一篇文章中使用IP为192.168.9.154的机器安装并开启了Kafka进行了简单测试,充当了Kafka服务器. 本篇文章新开启一台 ...