完美实现八种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代码
Mar 11 Javascript
jQuery中校验时间格式的正则表达式小结
Sep 22 Javascript
倒记时60刷新网页的js代码
Feb 18 Javascript
浅谈js中的闭包
Mar 16 Javascript
jQuery插件PageSlide实现左右侧栏导航菜单
Apr 12 Javascript
Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值
Mar 23 Javascript
Vue2.0父组件与子组件之间的事件发射与接收实例代码
Sep 19 Javascript
浅谈react前后端同构渲染
Sep 20 Javascript
JS实现的ajax和同源策略(实例讲解)
Dec 01 Javascript
实现jquery放大镜的两种方法
Feb 22 jQuery
webpack 如何同时输出压缩和未压缩的文件的实现步骤
Jun 05 Javascript
vue中el-input绑定键盘按键(按键修饰符)
Jul 22 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
php 搜索框提示(自动完成)实例代码
2012/02/05 PHP
解析二进制流接口应用实例 pack、unpack、ord 函数使用方法
2013/06/18 PHP
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
2014/02/18 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
ThinkPHP提示错误Fatal error: Allowed memory size的解决方法
2015/02/12 PHP
Linux下从零开始安装配置Nginx服务器+PHP开发环境
2015/12/21 PHP
基于jQuery的淡入淡出可自动切换的幻灯插件打包下载
2010/09/15 Javascript
js 固定悬浮效果实现思路代码
2013/08/02 Javascript
JS获取单击按钮单元格所在行的信息
2014/06/17 Javascript
javascript中AJAX用法实例分析
2015/01/30 Javascript
jquery输入数字随机抽奖特效的简单实现代码
2016/06/10 Javascript
总结javascript中的六种迭代器
2016/08/16 Javascript
Angular.js中定时器循环的3种方法总结
2017/04/27 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
JavaScript代码实现微博批量取消关注功能
2021/02/05 Javascript
python 解析html之BeautifulSoup
2009/07/07 Python
python正常时间和unix时间戳相互转换的方法
2015/04/23 Python
Python argv用法详解
2016/01/08 Python
Django框架教程之正则表达式URL误区详解
2018/01/28 Python
python变量命名的7条建议
2019/07/04 Python
python的debug实用工具 pdb详解
2019/07/12 Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
2019/08/10 Python
解决ROC曲线画出来只有一个点的问题
2020/02/28 Python
Shopee马来西亚:随拍即卖,最佳行动电商拍卖平台
2017/06/05 全球购物
国际礼品店:GiftsnIdeas
2018/05/03 全球购物
白俄罗斯大卖场:21vek.by
2019/07/25 全球购物
自我评价优秀范文分享
2013/11/30 职场文书
2014自主招生自荐信策略
2014/01/27 职场文书
幼儿园六一儿童节主持节目串词
2014/03/21 职场文书
职业生涯规划书前言
2014/04/15 职场文书
教师评语大全
2014/04/28 职场文书
关于祖国的演讲稿
2014/05/04 职场文书
正规欠条模板
2015/07/03 职场文书
2016暑期社会实践心得体会范文
2016/01/14 职场文书
德劲DE1108畅想
2021/04/22 无线电
Windows Server 版本 20H2 于 8 月 9 日停止支持,Win10 版本 21H1 将于 12 月结束支
2022/07/23 数码科技