js图片轮播手动切换特效


Posted in Javascript onJanuary 12, 2017

先瞄一眼js图片轮播手动切换特效图:

js图片轮播手动切换特效

代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style>
* {padding:0px;margin:0px;}
#content {width:400px;height:400px;border:10px solid #ccc;position:absolute;top:50%;left:50%;margin-top:-200px;margin-left:-200px;}
#top,#bottom {width:400px;height:40px;background:#000;color:#fff;filter(opacity:80);opacity:0.8;text-align:center;line-height:40px;position:absolute;}
#top {top:0;}
#bottom {bottom:0;}
#prev,#next {position:absolute;top:50%;margin-top:-20px;width:40px;height:40px;text-align:center;line-height:40px;text-decoration:none;background:#000;color:#fff;font-size:30px;font-weight:bold;}
#prev {left:10px;}
#next {right:10px;}
#img1 {width:400px;height:400px;}
#tab {position:absolute;width:400px;height:100px;margin-top:-90px;text-align:center;}
#info {margin-top:10px;font-size:20px;}
#tab input {width:70px;height:30px;}
.active { background : yellow;}
</style>
</head>

<body>
<div id="content">
 <div id="tab">
  <input id="loopBtn" type="button" value="循环切换" />
  <input id="orderBtn" type="button" value="顺序切换" />
  <p id="info">图片顺序加载中......</p>
 </div>
 <p id="top">图片数量加载中......</p>
 <a id="prev" href="javascript:;"><</a>
 <a id="next" href="javascript:;">></a>
 <p id="bottom">图片信息加载中.....</p>
 <img id="img1" />
</div>
<script>
window.onload = function () {
 var top = $('top'), bottom = $('bottom'),
  prev = $('prev'), next = $('next'),
  img = $('img1'), loopBtn = $('loopBtn'),
  orderBtn = $('orderBtn'), info = $('info'), tab = $('tab');
 // 切换图片顺序的按钮
 var btns = tab.getElementsByTagName('input');
 // 第几张图片
 var num = 0;
 // 图片url
 var picSrc = ['img/1.jpg', 'img/2.jpg', 'img/3.jpg', 'img/4.jpg'];
 // 图片的数量
 var picLen = picSrc.length;
 // 图片信息
 var picInfo = ['高冷美女','终结者','性感美女','妖娆美女'];
 // 循环方式
 var loopMethod = 1; // 1,循环切换;0,,顺序切换 
 // 循环信息
 var loopInfo = ['图片可以从最后一张转到第一种切换','图片只能切换到最后一张或者第一张'];
 changePic();
 // 循环切换
 loopBtn.onclick = function () {
  loopMethod = 1;
  changeOrder();
 }
 // 顺序切换
 orderBtn.onclick = function () {
  loopMethod = 0;
  changeOrder();
 }
 // 上一张
 prev.onclick = function () {
  num--;
  // 1,循环切换;0,,顺序切换
  if(loopMethod) {
   if (num === -1) num = picLen - 1;
   changePic();
  } else {
   if (num === -1) {
    num = 0;
    alert('已经是第一张图片啦!');
   }
   changePic();
  }
 }
 // 下一张
 next.onclick = function () {
  num++;
  // 1,循环切换;0,,顺序切换
  if(loopMethod) {
   if (num === picLen) num = 0;
   changePic();
  } else {
   if (num === picLen) {
    num = picLen - 1;
    alert('已经是最后一张图片啦!');
   } 
   changePic();
  }
 }
 // 切换顺序
 function changeOrder () {
  // 情况按钮的高亮
  for ( var i = 0, len = btns.length; i < len;i++) {
   btns[i].className = '';
  } 
  // 循环切换 1,循环;0,顺序
  info.innerHTML = loopInfo[1 - loopMethod];
  loopMethod === 1 ? 
   loopBtn.className = 'active' :
   orderBtn.className = 'active';
 }
 // 切换图片
 function changePic () {
  changeOrder();
  top.innerHTML = num + 1 + ' / ' + picLen;
  bottom.innerHTML = picInfo[num];
  img.src = picSrc[num];
 } 
 // id选择器
 function $(id) { return document.getElementById(id);}
}
</script>
</body>
</html>

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

Javascript 相关文章推荐
js css样式操作代码(批量操作)
Oct 09 Javascript
基于jquery DOM写的类似微博发布的效果
Oct 20 Javascript
jquery Moblie入门—hello world的示例代码学习
Jan 08 Javascript
js校验表单后提交表单的三种方法总结
Feb 28 Javascript
IE中getElementsByName()对有些元素无效的解决方案
Sep 28 Javascript
JS获取各种宽度、高度的简单介绍
Dec 19 Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
Sep 18 Javascript
JS利用cookie记忆当前位置的防刷新导航效果
Oct 15 Javascript
jQuery AJAX timeout 超时问题详解
Jun 21 Javascript
vue项目实现github在线预览功能
Jun 20 Javascript
vue router 源码概览案例分析
Oct 09 Javascript
js+springMVC 提交数组数据到后台的实例
Sep 21 Javascript
原生js实现倒计时功能(多种格式调用)
Jan 12 #Javascript
JavaScript定义全局对象的方法示例
Jan 12 #Javascript
Node.js制作简单聊天室
Jan 12 #Javascript
jQuery 插件实现随机自由弹跳气泡样式
Jan 12 #Javascript
微信小程序学习(4)-系统配置app.json详解
Jan 12 #Javascript
jQuery Validate 数组 全部验证问题
Jan 12 #Javascript
easyui datebox 时间限制,datebox开始时间限制结束时间,datebox截止日期比起始日期大的实现代码
Jan 12 #Javascript
You might like
如何使用动态共享对象的模式来安装PHP
2006/10/09 PHP
国外十大最流行的PHP框架排名
2013/07/04 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(五)
2014/06/23 PHP
php实现压缩合并js的方法【附demo源码下载】
2016/09/22 PHP
php生出随机字符串
2017/07/06 PHP
用jQuery模拟页面加载进度条的实现代码
2011/12/19 Javascript
js中document.write使用过程中的一点疑问解答
2014/03/20 Javascript
asp.net+js实现金额格式化
2015/02/27 Javascript
jQuery垂直多级导航菜单代码分享
2015/08/18 Javascript
JavaScript自动点击链接 防止绕过浏览器访问的方法
2017/01/19 Javascript
Javascript封装id、class与元素选择器方法示例
2017/03/13 Javascript
原生JS实现不断变化的标签
2017/05/22 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
2017/06/12 jQuery
JS函数节流和函数防抖问题分析
2017/12/18 Javascript
基于vue.js中事件修饰符.self的用法(详解)
2018/02/23 Javascript
关于JavaScript中高阶函数的魅力详解
2018/09/07 Javascript
微信小程序实现判断是分享到群还是个人功能示例
2019/05/03 Javascript
ES6 新增的创建数组的方法(小结)
2019/08/01 Javascript
vue-model实现简易计算器
2020/08/17 Javascript
Python多进程并发(multiprocessing)用法实例详解
2015/06/02 Python
Python制作简单的网页爬虫
2015/11/22 Python
pytorch 把MNIST数据集转换成图片和txt的方法
2018/05/20 Python
详解Python发送email的三种方式
2018/10/18 Python
python实现集中式的病毒扫描功能详解
2019/07/09 Python
Keras—embedding嵌入层的用法详解
2020/06/10 Python
Python大批量搜索引擎图像爬虫工具详解
2020/11/16 Python
标记环网Toke Ring IEEE802.5
2014/05/26 面试题
教导处工作制度
2014/01/18 职场文书
家长会主持词开场白
2014/03/18 职场文书
合作经营协议书范本
2014/04/17 职场文书
航班延误投诉信
2015/07/02 职场文书
七年级语文教学反思
2016/03/03 职场文书
vue3中的组件间通信
2021/03/31 Vue.js
2021年pycharm的最新安装教程及基本使用图文详解
2021/04/03 Python
Python上下文管理器Content Manager
2021/06/26 Python
SONY600GR,国产收音机厂商永远的痛
2022/04/05 无线电