完美实现八种js焦点轮播图(上篇)


Posted in Javascript onJuly 18, 2016

本文分为上下篇为大家分享了js焦点轮播图八种经典效果,供大家参考,具体内容如下

基本布局:

<div id="box">
 <ul id="ul">
 <li style='display:block;'><img src="images/1.jpg" alt=""></li>
 <li><img src="images/2.jpg" alt=""></li>
 <li><img src="images/3.jpg" alt=""></li>
 <li><img src="images/4.jpg" alt=""></li>
 <li><img src="images/5.jpg" alt=""></li>
 </ul>
 <ol id='ol'>
 <li class='active'>1</li>
 <li>2</li>
 <li>3</li>
 <li>4</li>
 <li>5</li>
 </ol>
 </div>

1.普通焦点图

window.onload=function(){
 var oUl=document.getElementById('ul');
 var aLi_u=oUl.getElementsByTagName('li');
 var oOl=document.getElementById('ol');
 var aLi_o=oOl.getElementsByTagName('li');
 for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].index=i;
 aLi_o[i].onmouseover=function(){
  for(var i=0;i<aLi_o.length;i++){
  aLi_o[i].className='';
  aLi_u[i].style.display='none';
  }
  this.className='active';
  // console.log(aLi_o[this.index]);
  aLi_u[this.index].style.display='block';
 }
 }
 }

效果图:图略

2.淡入淡出效果

var oUl=document.getElementById('ul');
var aLi_u=oUl.getElementsByTagName('li');
var oOl=document.getElementById('ol');
var aLi_o=oOl.getElementsByTagName('li');

for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].index=i;
 aLi_o[i].onmouseover=function(){
 for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].className='';
 aLi_u[i].style.display='none';
 aLi_u[i].style.filter='alpha(opacity=0)';
 aLi_u[i].style.opacity=0;
 }
 this.className='active';
 aLi_u[this.index].style.display='block';
 startMove(aLi_u[this.index],{opacity:100});
 };
}

效果图:

完美实现八种js焦点轮播图(上篇)

3.向上滚动效果:

var oUl=document.getElementById('ul');
var aLi_u=oUl.getElementsByTagName('li');
var oOl=document.getElementById('ol');
var aLi_o=oOl.getElementsByTagName('li');
var LiHeight=aLi_u[0].offsetHeight;

for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].index=i;
 aLi_o[i].onmouseover=function(){
 for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].className='';

 this.className='active';

 startMove(oUl,{top:-this.index*LiHeight});
 }
 };
}

效果图:

完美实现八种js焦点轮播图(上篇)

4.定时上下滚动:

window.onload=function(){
 var oBox=document.getElementById('box');
 var oUl=document.getElementById('ul');
 var aLi_u=oUl.getElementsByTagName('li');
 var oOl=document.getElementById('ol');
 var aLi_o=oOl.getElementsByTagName('li');
 var LiHeight=aLi_u[0].offsetHeight;
 var iNow=0;//当前索引
 var timer=null;//定时器

 for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].index=i;
 aLi_o[i].onmouseover=function(){
 for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].className='';

 this.className='active';
 //建立关系:很重要
 iNow=this.index;

 startMove(oUl,{top:-this.index*LiHeight});
 }
 };
 //开定时器
 timer=setInterval(toRun,2000);

 oBox.onmouseover=function(){
 clearInterval(timer);
 };
 oBox.onmouseout=function(){
 timer=setInterval(toRun,2000);
 };
 //定时函数
 function toRun(){
 if(iNow==aLi_o.length-1){
 iNow=0;
 }else{
 iNow++;
 }

 for(var i=0;i<aLi_o.length;i++){
 aLi_o[i].className='';
 }
 aLi_o[iNow].className='active';
 startMove(oUl,{top:-iNow*LiHeight});
 }
};

效果图:

完美实现八种js焦点轮播图(上篇)

更多关于轮播图效果的专题,请点击下方链接查看学习

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木,大家继续关注更多精彩焦点轮播图。

Javascript 相关文章推荐
jQuery 性能优化手册 推荐
Feb 23 Javascript
Javascript实现CheckBox的全选与取消全选的代码
Jul 20 Javascript
jQuery输入城市查看地图使用介绍
May 08 Javascript
JQuery设置文本框和密码框得到焦点时的样式
Aug 30 Javascript
setTimeout和setInterval的深入理解
Nov 08 Javascript
js判断登陆用户名及密码是否为空的简单实例
May 16 Javascript
JS高级运动实例分析
Dec 20 Javascript
Vue.js实现按钮的动态绑定效果及实现代码
Aug 21 Javascript
小程序自定义日历效果
Dec 29 Javascript
jQuery事件多次绑定与解绑问题实例分析
Feb 19 jQuery
VUE组件中的 Drawer 抽屉实现代码
Aug 06 Javascript
vue-cli打包后本地运行dist文件中的index.html操作
Aug 12 Javascript
jQuery实现根据滚动条位置加载相应内容功能
Jul 18 #Javascript
JS HTML5拖拽上传图片预览
Jul 18 #Javascript
jQuery 操作input中radio的技巧
Jul 18 #Javascript
JS HTML5实现拖拽移动列表效果
Aug 27 #Javascript
浅谈$('div a') 与$('div&gt;a')的区别
Jul 18 #Javascript
浅析JavaScript中的array数组类型系统
Jul 18 #Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
Jul 18 #Javascript
You might like
Terran兵种对照表
2020/03/14 星际争霸
php AJAX实例根据邮编自动完成地址信息
2008/11/23 PHP
PHP JSON格式数据交互实例代码详解
2011/01/13 PHP
CodeIgniter中实现泛域名解析
2014/07/19 PHP
php使用指定字符列表生成随机字符串的方法
2015/04/18 PHP
PHP中的魔术方法总结和使用实例
2015/05/11 PHP
JavaScript栏目列表隐藏/显示简单实现
2013/04/03 Javascript
jquery清空textarea等输入框实现代码
2013/04/22 Javascript
css+js实现部分区域高亮可编辑遮罩层
2014/03/04 Javascript
JavaScript原生xmlHttp与jquery的ajax方法json数据格式实例
2015/12/04 Javascript
微信小程序 使用canvas制作K线实例详解
2017/01/12 Javascript
解析NodeJS异步I/O的实现
2017/04/13 NodeJs
bootstrap table插件的分页与checkbox使用详解
2017/07/23 Javascript
Node.js创建Web、TCP服务器
2017/12/05 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
[01:07:57]DOTA2-DPC中国联赛 正赛 Ehome vs Magma BO3 第二场 1月19日
2021/03/11 DOTA
python使用cPickle模块序列化实例
2014/09/25 Python
Python编程中使用Pillow来处理图像的基础教程
2015/11/20 Python
Python自定义类的数组排序实现代码
2016/08/28 Python
Python实现动态图解析、合成与倒放
2018/01/18 Python
Python实现的径向基(RBF)神经网络示例
2018/02/06 Python
Python八大常见排序算法定义、实现及时间消耗效率分析
2018/04/27 Python
详解Django-channels 实现WebSocket实例
2019/08/22 Python
节日快乐! Python画一棵圣诞树送给你
2019/12/24 Python
python GUI库图形界面开发之PyQt5工具栏控件QToolBar的详细使用方法与实例
2020/02/28 Python
如何利用Python识别图片中的文字
2020/05/31 Python
python产生模拟数据faker库的使用详解
2020/11/04 Python
信息部岗位职责
2013/11/12 职场文书
终止劳动合同协议书
2014/10/05 职场文书
客服专员岗位职责
2015/02/10 职场文书
企业财务人员岗位职责
2015/04/14 职场文书
盲山观后感
2015/06/11 职场文书
2016年劳模先进事迹材料
2016/02/25 职场文书
2016年三八红旗手先进事迹材料
2016/02/26 职场文书
docker-compose部署Yapi的方法
2022/04/08 Servers
MySQL中一条SQL查询语句是如何执行的
2022/04/08 MySQL