完美实现js焦点轮播效果(一)


Posted in Javascript onMarch 07, 2017

最简单轮播形式,js中通过pic的display属性控制变换,也可通过调整Pic的margin-Left

效果如图:

完美实现js焦点轮播效果(一)

实现代码:

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title></title>
 <style type="text/css">
*{
 margin: 0;
 padding: 0;
 list-style: none;
 text-decoration: none;
}
 .wrap{
 width: 490px;
 height: 170px;
 margin: 100px auto;
 border: 1px solid #000000;
 position: relative;
 overflow: hidden;
 }
 #pic{
 width: 2450px;
 height: 170px;
 }
 #pic li{
 float: left;
 }
 #list{
 position: absolute;
 bottom: 10px;
 left:150px ;
 }
 #list li{
 float: left;
 width: 15px;
 height: 15px;
 background: #fff;
 margin: 0 10px;
 border-radius: 50%;
 cursor: pointer;
 }
 #list .on{
 background: #e27a00;
 }
 .Prev{
 top: 30px;
 left: 0;
 }
 .Next{
 top: 30px;
 right: 0;
 }
 .Prev,.Next{
 position: absolute;
 font-size: 80px;
 font-weight: bold;
 color:#fff ;
 -webkit-transition: all 0.35s ease-in-out
 }
 .Next:hover,
 .Prev:hover{
 background: #ccc;
 background: rgba(204, 204, 204, 0.4);
 }
 .show{
 display: block;
 }
 .hidden{
 display: none;
 }
 </style>
 <script type="text/javascript">
 window.onload=function(){
 var pic=document.getElementById('pic').getElementsByTagName('li');
 var list=document.getElementById('list').getElementsByTagName('li');
 var prev=document.getElementById('Prev');
 var next=document.getElementById('Next');
 var index=0;
 var timer=null;

 auto();
 for(var i=0;i<list.length;i++){
 list[i].index=i;
 list[i].onmouseover=function(){
  clearInterval(timer);
  Change(this.index);
 }
 list[i].onmouseout=function(){
  auto();
 }
 pic[i].onmouseover=function(){
  clearInterval(timer);
 }
 pic[i].onmouseout=function(){
  auto();
 }
 }
 prev.onclick=function(){
 clearInterval(timer);
 index--;
 if(index<=0){
  index=list.length-1;
 }
 Change(index);
 }
 next.onclick=function(){
 clearInterval(timer);
 index++;
 if(index>=list.length){
  index=0;
 }
 Change(index);
 }
 prev.onmousemove=function(){
 clearInterval(timer);
 }
 prev.onmouseout=function(){
 auto();
 }
 next.onmouseover=function(){
 clearInterval(timer);
 }
 next.onmouseout=function(){
 auto();
 }

 function Change(curIndex){
  for(var i=0;i<list.length;i++){
  list[i].className="";
  pic[i].className="hidden";
  }
  list[curIndex].className="on";
  pic[curIndex].className="show";
 index=curIndex;
 }
 function auto(){
 timer=setInterval(function(){
  index++;
  if(index>=list.length){
  index=0
  }
  Change(index);
 },2000);
 }
 }
 </script>
</head>
<body>
<div class="wrap" id="wrap">
 <ul id="pic">
 <li class="show"><a href="#"><img src="/54111cd9000174cd04900170.jpg" alt=""/></a></li>
 <li><a href="#"><img src="/54111dac000118af04900170.jpg" alt=""/></a></li>
 <li><a href="#"><img src="/54111d9c0001998204900170.jpg" alt=""/></a></li>
 <li><a href="#"><img src="/54111d8a0001f41704900170.jpg" alt=""/></a></li>
 <li><a href="#"><img src="/54111d7d00018ba604900170.jpg" alt=""/></a></li>
 </ul>
 <ul id="list">
 <li class="on"></li>
 <li></li>
 <li></li>
 <li></li>
 <li></li>
 </ul>
 <a href="javascript:;" class="Prev" id="Prev"><</a>
 <a href="javascript:;" class="Next" id="Next">></a>
</div>
</body>
</html>

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

Javascript 相关文章推荐
基于Jquery的仿照flash放大图片效果代码
Mar 16 Javascript
js操作iframe兼容各种主流浏览器示例代码
Jul 22 Javascript
js获取本机的外网/广域网ip地址完整源码
Aug 12 Javascript
Web前端开发工具——bower依赖包管理工具
Mar 29 Javascript
Angularjs中$http以post请求通过消息体传递参数的实现方法
Aug 05 Javascript
微信小程序 支付功能实现PHP实例详解
May 12 Javascript
angular过滤器实现排序功能
Jun 27 Javascript
React 无状态组件(Stateless Component) 与高阶组件
Aug 14 Javascript
vue拖拽排序插件vuedraggable使用方法详解
Aug 21 Javascript
vue实现的网易云音乐在线播放和下载功能案例
Feb 18 Javascript
Vue3.0数据响应式原理详解
Oct 09 Javascript
vue通过v-html指令渲染的富文本无法修改样式的解决方案
May 20 Javascript
Vue2.0组件间数据传递示例
Mar 07 #Javascript
js实现网页定位导航功能
Mar 07 #Javascript
Vuejs 组件——props数据传递的实例代码
Mar 07 #Javascript
js实现百度登录框鼠标拖拽效果
Mar 07 #Javascript
Vue获取DOM元素样式和样式更改示例
Mar 07 #Javascript
原生JavaScript实现Tooltip浮动提示框特效
Mar 07 #Javascript
基于JavaScript实现图片剪切效果
Mar 07 #Javascript
You might like
fckeditor上传文件按日期存放及重命名方法
2015/05/22 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
2018/06/11 PHP
Extjs EditorGridPanel中ComboBox列的显示问题
2011/07/04 Javascript
javascript ready和load事件的区别示例介绍
2013/08/30 Javascript
JQuery中form验证出错信息的查看方法
2013/10/08 Javascript
JavaScript极简入门教程(二):对象和函数
2014/10/25 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
2015/11/03 Javascript
利用jQuery中的ajax分页实现代码
2016/02/25 Javascript
用JavaScript获取页面文档内容的实现代码
2016/06/10 Javascript
基于zepto.js简单实现上传图片
2016/06/21 Javascript
详解Javascript百度地图接口开发文档中的类和方法
2017/02/07 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
vue.js如何将echarts封装为组件一键使用详解
2017/10/10 Javascript
浅谈Webpack核心模块tapable解析
2018/09/11 Javascript
使用nodejs分离html文件里的js和css详解
2019/04/12 NodeJs
JavaScript实现下拉列表
2021/01/20 Javascript
python网络编程学习笔记(一)
2014/06/09 Python
python实现上传样本到virustotal并查询扫描信息的方法
2014/10/05 Python
使用Python读写文本文件及编写简单的文本编辑器
2016/03/11 Python
numpy数组拼接简单示例
2017/12/15 Python
Python发送邮件测试报告操作实例详解
2018/12/08 Python
Python面向对象之继承原理与用法案例分析
2019/12/31 Python
伦敦剧院门票:London Theatre Direct
2018/11/21 全球购物
美国儿童服装、家具和玩具精品店:Maisonette
2019/11/24 全球购物
技术合作协议书范本
2014/04/18 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
中学学校门卫岗位职责
2014/08/15 职场文书
质监局领导班子践行群众路线整改方案
2014/10/26 职场文书
保密工作整改情况汇报
2014/11/06 职场文书
2015年初中元旦晚会活动总结
2014/11/28 职场文书
工作后的感想
2015/08/07 职场文书
2016年国培心得体会及反思
2016/01/13 职场文书
小学英语课教学反思
2016/02/15 职场文书
2016年党员创先争优公开承诺书
2016/03/25 职场文书
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
2021/05/17 Python
python利用while求100内的整数和方式
2021/11/07 Python