<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
ul { padding:0; margin:0; }
li { list-style:none; }
body { background:#333; }
.pic { width:400px; height:500px; position:relative; margin:0 auto;}
.pic img { width:400px; height:500px; }
.pic ul { width:40px; position:absolute; top:0; right:-50px; }
.pic li { width:40px; height:40px; margin-bottom:4px; background:#666; }
.pic .active { background:#FC3; }
.pic span { top:0; }
.pic p { bottom:0; margin:0; }
.pic p,.pic span { position:absolute; left:0; width:400px; height:30px; line-height:30px; text-align:center; color:#fff; background:#000; }
.btn{
width: 24px;
height: 24px;
background: rgba(0,0,0,0.5);
position: absolute;
top: 250px;
text-align: center;
line-height: 24px;
text-decoration: none;
color: #fff;
}
.pic .next{
right: 0;
}
</style>

</head>

<body>

<div id="pic" class="pic">
<img src="" />
  <span>数量正在加载中……</span>
  <p>文字说明正在加载中……</p>
  <ul></ul>
  <a href="javascript:;" class="btn next">></a>
  <a href="javascript:;" class="btn prev"><</a>
</div>

<script>

var oPic = document.getElementById("pic")

var oImg = oPic.getElementsByTagName("img")[0]
var oSpan = oPic.getElementsByTagName("span")[0]
var oP = oPic.getElementsByTagName("p")[0]
var oUl = oPic.getElementsByTagName("ul")[0]
var oA = oPic.getElementsByTagName("a")
var oLi = oUl.getElementsByTagName("li")
var num = 0
var arrUrl = ["img/1.png","img/2.png","img/3.png","img/4.png"]
var arrText = ["1","2","3","4"]

function tab(){

oSpan.innerHTML = num+1+"/"+arrUrl.length
oP.innerHTML = arrText[num]
oImg.src = arrUrl[num]
}
tab()

for (var i=0;i<arrUrl.length;i++) {
oUl.innerHTML += "<li></li>"
}

oLi[0].className = "active"

for (var i=0;i<oLi.length;i++) {
oLi[i].index = i
oLi[i].onclick = function(){
num = this.index
for (var i=0;i<oLi.length;i++) {
oLi[i].className = ""
}

oLi[num].className = 'active'
tab()
}
}


oA[0].onclick = function(){

num++

if(num>arrUrl.length-1){
num = 0
}

for (var i=0;i<oLi.length;i++) {
oLi[i].className = ""
}
oLi[num].className = 'active'
tab()

}

oA[1].onclick = function(){

num--

if(num<0){
num = arrUrl.length-1
}

for (var i=0;i<oLi.length;i++) {
oLi[i].className = ""
}
oLi[num].className = 'active'
tab()

}




</script>

</body>
</html>

js-图片轮播的更多相关文章

  1. js图片轮播效果实现代码

    首先给大家看一看js图片轮播效果,如下图 具体思路: 一.页面加载.获取整个容器.所有放数字索引的li及放图片列表的ul.定义放定时器的变量.存放当前索引的变量index 二.添加定时器,每隔2秒钟i ...

  2. JS图片轮播[左右轮播

    直接可以用,网上摘下来的! <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...

  3. js 图片轮播简单版

    <html> <head> <meta charset="utf-8" /> <title></title> <s ...

  4. js 图片轮播(一)

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  5. js 图片轮播代码编辑

    图片轮播,将几张图片统一放在展示平台 banner上,通过banner移动将图片轮流播放. <script>// 取对象 var btn_l = document.getElementsB ...

  6. Js 图片轮播渐隐效果

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  7. 非常简洁的js图片轮播

    <div id="tupian"></div><script>var jpg =new Array();jpg[0]="url(c.j ...

  8. js图片轮播图

    /*焦点图*/        var Box='.carousel';//盒子        var Menu=$(Box+' .l_cursor li');//圆点菜单        var Con ...

  9. angular js 图片轮播

    搬运工: eg1: Build a Sweet AngularJS Photo Slider Pt 2 with ngTouch DEMO:http://paul-xiao.github.io/ang ...

  10. 最简单的JS图片轮播

    var arr=new Array(); arr[1]="";//放图片地址 arr[2]=""; arr[3]=""; var no=0; ...

随机推荐

  1. Nginx 的 docker 部署

    1.输入命令 docker pull nginx:1.15 拉取 nginx 的镜像: 2.使用 docker images 查看拉取到的镜像信息: 3.在主机上创建用于映射的目录 mkdir -p ...

  2. Get、Post 提交的乱码问题

    1.问题 在spring mvc开发的时候出现乱码问题: 2.解决方案 (1)Get提交:tomcat容器接收的造成的乱码问题,修改server.xml文件: (2)Post提交:在web.xml中配 ...

  3. 洛谷1993 小K的农场

    原题链接 裸的差分约束. \(X_a-X_b\geqslant C\) \(X_a-X_b\leqslant C\Rightarrow X_b-X_a\geqslant -C\) \(X_a-X_b\ ...

  4. 数据存储(直接写入、NSUserDefaults、NSkeyedArchiver)

    ios中常用文件存取的方法有: 1.直接写文件的方式,可以存储的对象有NSString.NSArray.NSDictionary.NSData.NSNumber,数据全部存放在一个属性列表文件(*.p ...

  5. Windows 8风格应用-触控输入

    参考:演练:创建您的第一个触控应用程序 http://msdn.microsoft.com/zh-cn/library/ee649090(v=vs.110).aspx win8支持多点触摸技术,而我们 ...

  6. Windows 8.1 app 界面设计

    大纲: Windows 应用商店应用 UI 详细信息 http://msdn.microsoft.com/zh-cn/library/windows/apps/xaml/dn263191.aspx 快 ...

  7. JS高级- OOP-ES5

    1. OOP 面向对象三大特点: 封装,继承,多态 封装: 问题: 构造函数可重用代码和结构定义,但无法节约内存 为什么: 放在构造函数内的方法定义,每new一次,都会反复创建副本——浪费内存 解决: ...

  8. 再读c++primer plus 006

    使用类: 1.重载限制:(1)重载后的运算符必须至少有一个操作数是用户定义的类型,这将防止用户为标准类型重载运算符 (2)使用运算符时不能违反运算符原来的语法规则,不能修改运算符的优先级 (3)不能创 ...

  9. bundler简介(ruby gem)

    簡介 Bundler   RubyGem 是包裝.散佈Ruby程式庫的標準方式,相關文件可以參考 RubyGems Guides 的說明,或是 簡介 plugins 中的第二個例子.在使用rails ...

  10. 通用Mapper

    原理是:拦截器 1.假设:使用MyBatis只需要定义Mapper接口,无需编写Mapper.xml文件 如果实现无需编写Mapper.xml文件,我们必须要实现动态拼接SQL 如何实现动态拼接SQL ...