【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 ...
随机推荐
- PAT 1038 Recover the Smallest Number[dp][难]
1038 Recover the Smallest Number (30 分) Given a collection of number segments, you are supposed to r ...
- Java泛型三:Java泛型详解
原文地址https://www.cnblogs.com/lzq198754/p/5780426.html 1.为什么需要泛型 泛型在Java中有很重要的地位,网上很多文章罗列各种理论,不便于理解,本篇 ...
- python全栈开发从入门到放弃之socket并发编程之协程
一.为什么会有协程 本节的主题是基于单线程来实现并发,即只用一个主线程(很明显可利用的cpu只有一个)情况下实现并发,为此我们需要先回顾下并发的本质:切换+保存状态 cpu正在运行一个任务,会在两种情 ...
- SQL Server OBJECTPROPERTY使用方法
OBJECTPROPERTY 返回有关当前数据库中的模式作用域对象的信息.此函数不能用于不是模式范围的对象,例如数据定义语言(DDL)触发器和事件通知. OBJECTPROPERTY 语法: OBJE ...
- 如何做好Web接口测试
说说我在测试接口时遇到的一些需要注意的点: 1.接口返回:数据格式是否与预期一致.例如:要求返回json格式的数据,json数据的key命名是否正确,对应的value是否与数据库一致.需要转换的数据是 ...
- hadoop 一些命令
关闭访问墙 service iptables stop hadoop dfs -mkdir input hadoop dfs -copyFromLocal conf/* input hadoop j ...
- 对于近阶段公司代码 review 小结
来新公司,给公司的SDK review了一下.发现了不少小问题,在此总结一下. (我下面说明问题可能是很简单,但是搞清楚某些问题还是花了些时间的,大家引以为戒吧) 先谈谈处理的问题: 1.某天QA说有 ...
- javascript 面向对象 new 关键字 原型链 构造函数
JavaScript面向对象JavaScript 语言使用构造函数(constructor)作为对象的模板.所谓"构造函数",就是专门用来生成实例对象的函数.它就是对象的模板,描述 ...
- kafka监控搭建
1. 下载 wget https://github.com/quantifind/KafkaOffsetMonitor/releases/download/v0.2.1/KafkaOffsetMoni ...
- 关于git pull时出现的问题及解决反思
前因 在前面由于已经git过一次,按照娄老师的要求,代码一个一个commit,所以删掉之前的git仓库(用la查看,使用rm -rf .git删除).但远程origin已经存在,所以执行git rem ...