基于JavaScript实现带缩略图的轮播效果


Posted in Javascript onJanuary 12, 2017

先瞄一眼js轮播效果图

基于JavaScript实现带缩略图的轮播效果

代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
*{padding:0;margin:0;}
#content {width:400px;height:500px;margin:10px auto;position:relative;border:1px solid #000;color:red;font-size:20px;}
#title, #bottom{position:absolute;width:400px;height:30px;line-height:30px;text-align:center;font-size:20px;background:#f1f1f1;}
#bottom{bottom:0;cursor:pointer;}
#bottom span{display:inline-block;width:15px;height:15px;border-radius:15px;background:#000;text-align:center;line-height:15px;position:relative;}
#bottom span.active{background: #FFFF33;}
#bottom span div {position:absolute;width:110px;height:110px;top:-125px;left:-46px;display:none;}
#bottom span div:after{content:'';position:absolute;left:49px;bottom:-12px;border-top:7px solid #fff;border-right:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid transparent;}
#bottom span img {width:100px;height:100px;border:5px solid #fff;}
#left, #right{position:absolute;width:60px;height:60px;border-radius:60px;line-height:60px;font-size:60px;background:#FFFF66;font-weight:bold;text-align:center;top:50%;margin-top:-25px;color:#fff;cursor:pointer;filter(opacity:70);opacity:0.7;}
#left:hover,#right:hover{filter(opacity:100);opacity:1;}
#left{left:0px;}
#right{right:0px;} 
#img{width:400px;height:500px;}
</style>
<script>
window.onload = function () {
 var bottom = $('bottom'),title = $('title'),
 img = $('img'),left = $('left'),right = $('right');
 var aSpan = bottom.getElementsByTagName('span');
 var aDiv = bottom.getElementsByTagName('div');
 var arr = ['图片一','图片二','图片三', '图片四'];
 var num = 0;
 // 初始化
 picTab();

 // 点击下一张
 right.onclick = function () {
 if (num === aDiv.length - 1) num = -1;
 num++;
 picTab();
 }

 // 点击上一张
 left.onclick = function () {
 if (num === 0) num = aDiv.length;
 num--;
 picTab();
 }

 function picTab() {
 title.innerHTML = arr[num];
 img.src = 'img/' + (num + 1) + '.png';
 for ( var i = 0; i < aSpan.length; i++ ) {
  aSpan[i].className = '';
 }
 aSpan[num].className = 'active';
 }
 // 鼠标移入移出显示缩略图
 for ( var i = 0; i < aSpan.length; i++ ) {
 aSpan[i].index = i;
 aSpan[i].onmouseover = function () {
  aDiv[this.index].style.display = 'block';
 }
 aSpan[i].onmouseout = function () {
  aDiv[this.index].style.display = 'none';
 }
 aSpan[i].onclick = function () {
  num = this.index;
  picTab();
 }
 }
 function $(id) { return document.getElementById(id);}
}
</script>
</head>
<body>
<div id="content">
 <div id="title">带缩略图的轮播</div>
 <div id="left"><</div>
 <div id="right">></div>
 <div id="bottom">
 <span><div><img src="img/1.png"/></div></span>
 <span><div><img src="img/2.png"/></div></span>
 <span><div><img src="img/3.png"/></div></span>
 <span><div><img src="img/4.png"/></div></span>
 </div>
 <img src="" id="img"/>
</div>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript之自定义类型
May 04 Javascript
JavaScript 上万关键字瞬间匹配实现代码
Jul 07 Javascript
jQuery选择器简明总结(含用法实例,一目了然)
Apr 25 Javascript
angular中使用路由和$location切换视图
Jan 23 Javascript
jquery实现点击查看更多内容控制段落文字展开折叠效果
Aug 06 Javascript
Sequelize中用group by进行分组聚合查询
Dec 12 Javascript
jQuery.Validate表单验证插件的使用示例详解
Jan 04 Javascript
canvas实现探照灯效果
Feb 07 Javascript
JavaScript编写一个贪吃蛇游戏
Mar 09 Javascript
js实现一个简单的数字时钟效果
Mar 29 Javascript
ES6中Class类的静态方法实例小结
Oct 28 Javascript
Node.Js生成比特币地址代码解析
Apr 21 Javascript
js通过指定下标或指定元素进行删除数组的实例
Jan 12 #Javascript
js仿搜狐视频记录片列表展示效果
May 30 #Javascript
原生js实现商品放大镜效果
Jan 12 #Javascript
JS 在数组指定位置插入/删除数据的方法
Jan 12 #Javascript
JS图片压缩(pc端和移动端都适用)
Jan 12 #Javascript
原生js实现淘宝购物车功能
Jun 23 #Javascript
jQuery实现拖拽可编辑模块功能代码
Jan 12 #Javascript
You might like
业余方法DIY电子管FM收音机
2021/03/02 无线电
PHP 创建标签云函数代码
2010/05/26 PHP
利用Memcached在php下实现session机制 替换PHP的原生session支持
2010/08/21 PHP
php安全之直接用$获取值而不$_GET 字符转义
2012/06/03 PHP
php有道翻译api调用方法实例
2014/12/22 PHP
PHP微信开发用Cache 解决数据缓存
2016/07/11 PHP
PHP中overload与override的区别
2017/02/13 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
设定php简写功能的方法
2019/11/28 PHP
thinkphp5.1框架模板赋值与变量输出示例
2020/05/25 PHP
原生js实现淘宝首页点击按钮缓慢回到顶部效果
2014/04/06 Javascript
jQuery实现的输入框选择时间插件用法实例
2015/02/28 Javascript
jquery插件pagination实现无刷新ajax分页
2015/09/30 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
2016/08/04 Javascript
angular实现商品筛选功能
2017/02/01 Javascript
Vue + Webpack + Vue-loader学习教程之功能介绍篇
2017/03/14 Javascript
ReactNative之FlatList的具体使用方法
2017/11/29 Javascript
Koa日志中间件封装开发详解
2019/03/09 Javascript
微信小程序+腾讯地图开发实现路径规划绘制
2019/05/22 Javascript
ES6 Generator基本使用方法示例
2020/06/06 Javascript
JavaScript缺少insertAfter解决方案
2020/07/03 Javascript
js实现查询商品案例
2020/07/22 Javascript
Element Card 卡片的具体使用
2020/07/26 Javascript
[40:05]LGD vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
使用Python的Treq on Twisted来进行HTTP压力测试
2015/04/16 Python
python3连接MySQL数据库实例详解
2018/05/24 Python
使用python获取邮箱邮件的设置方法
2019/09/20 Python
Scrapy框架基本命令与settings.py设置
2020/02/06 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
KTV门卫岗位职责
2014/10/09 职场文书
个人授权委托书范本格式
2014/10/12 职场文书
2014年英语教师工作总结
2014/12/03 职场文书
2014年电厂工作总结
2014/12/04 职场文书
2015年度保密工作总结
2015/04/24 职场文书
奶茶店的创业计划书该怎么写?
2019/07/15 职场文书
React如何使用axios请求数据并把数据渲染到组件
2022/08/05 Javascript