完美实现八种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 相关文章推荐
自用js开发框架小成 学习js的朋友可以看看
Nov 16 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
Dec 23 Javascript
bootstrap网页框架的使用方法
May 10 Javascript
AngularJS基础 ng-model 指令详解及示例代码
Aug 02 Javascript
angularjs实现文字上下无缝滚动特效代码
Sep 04 Javascript
基于Particles.js制作超炫粒子动态背景效果(仿知乎)
Sep 13 Javascript
layui下拉框获取下拉值(select)的例子
Sep 10 Javascript
jQuery实现鼠标移入显示蒙版效果
Jan 11 jQuery
Vue.js 中制作自定义选择组件的代码附演示demo
Feb 28 Javascript
微信小程序实现日历签到
Sep 21 Javascript
从零开始用webpack构建一个vue3.0项目工程的实现
Sep 24 Javascript
js数组的基本使用总结
Jan 18 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
Google Voice 短信发送接口PHP开源版(2010.5更新)
2010/07/22 PHP
linux下使用ThinkPHP需要注意大小写导致的问题
2011/08/02 PHP
114啦源码(114la)不能生成地方房产和地方报刊问题4级页面0字节的解决方法
2012/01/12 PHP
php使用Session和文件统计在线人数
2015/07/04 PHP
Yii2使用dropdownlist实现地区三级联动功能的方法
2016/07/18 PHP
yii2 RBAC使用DbManager实现后台权限判断的方法
2016/07/23 PHP
php处理静态页面:页面设置缓存时间实例
2017/06/22 PHP
laravel框架模板之公共模板、继承、包含实现方法分析
2019/08/30 PHP
学习YUI.Ext 第二天
2007/03/10 Javascript
jquery ready函数、css函数及text()使用示例
2013/09/27 Javascript
原生js做的手风琴效果的导航菜单
2013/11/08 Javascript
按钮接受回车事件的三种实现方法
2014/06/06 Javascript
浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
2014/06/11 Javascript
实例分析javascript中的call()和apply()方法
2014/11/28 Javascript
jQuery基于扩展简单实现倒计时功能的方法
2016/05/14 Javascript
js编写一个简单的产品放大效果代码
2016/06/27 Javascript
简单实现js悬浮导航效果
2017/02/05 Javascript
vue一步步实现alert功能
2017/07/05 Javascript
vue中使用cropperjs的方法
2018/03/01 Javascript
angularjs通过过滤器返回超链接的方法
2018/10/26 Javascript
微信小程序实现时间预约功能
2018/11/27 Javascript
javascriptvoid(0)含义以及与&quot;#&quot;的区别讲解
2019/01/19 Javascript
Python中的各种装饰器详解
2015/04/11 Python
python通过ssh-powershell监控windows的方法
2015/06/02 Python
TensorFlow搭建神经网络最佳实践
2018/03/09 Python
对PyTorch torch.stack的实例讲解
2018/07/30 Python
python 读取修改pcap包的例子
2019/07/23 Python
Python爬虫 scrapy框架爬取某招聘网存入mongodb解析
2019/07/31 Python
Python如何把Spark数据写入ElasticSearch
2020/04/18 Python
13个Pandas实用技巧,助你提高开发效率
2020/08/19 Python
python用opencv 图像傅里叶变换
2021/01/04 Python
女方回门宴答谢词
2014/01/14 职场文书
总会计师岗位职责
2014/02/19 职场文书
统计岗位职责
2014/02/21 职场文书
贷款收入证明范本
2015/06/12 职场文书
Hive常用日期格式转换语法
2022/06/25 数据库