js中的轮播图案例:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<style type="text/css">
*{
margin: 0;
padding: 0;
}
.box{
width: 800px;
height: 300px;
position: relative;
overflow: hidden;/*隐藏子元素*/
margin: 100px auto;
}
.box .slider{
width: 100%;
height: 100%;
}
.box .slider ul{
width: 1000%;
list-style: none;
position: absolute;
top: 0;
left: 0;
}
.box .slider img{
vertical-align: top;
}
.box .slider ul li{
float: left;
}
.box .scroll_nav{
list-style: none;
position: absolute;
right: 20px;
bottom: 10px;
}
.box .scroll_nav li{
float: left;
width: 20px;
height: 20px;
background-color: #000;
color: #fff;
text-align: center;
font-size: 12px;
font-family: "微软雅黑";
line-height: 20px;
cursor: pointer;
border-radius: 50%;
margin-right: 5px;
}
.box .scroll_nav li.current{
background-color: #356acb;
}
.box .arr{
width: 40px;
height: 50px;
font-size: 35px;
font-family: "黑体";
line-height: 50px;
background-color: rgba(0,0,0,0.3); /*这种方式能让背景透明而文本不收影响*/
color: #fff;
text-align: center;
position: absolute;
top: 125px;
font-weight: bold;
display: none;
cursor: pointer;
/* opacity: 0.1; opacity属性会让盒子半透明,与此同时它也会让黑子内部的文本半透明*/
}
.box .arr_prev{
left: 5px;
}
.box .arr_next{
right: 5px;
}
</style>
<script type="text/javascript">
//
function $(id){
return document.getElementById(id);
}
window.onload=function(){
//1.鼠标进入轮播图区域显示左右箭头
$('scroll').onmouseover=function(){
var arrs = this.getElementsByTagName('span');
for (var i = 0; i < arrs.length; i++) {
arrs[i].style.display = 'block';
}
}
$('scroll').onmouseout=function(){
var arrs = this.getElementsByTagName('span');
for (var i = 0; i < arrs.length; i++) {
arrs[i].style.display = 'none';
}
}
//2.动态生成轮播图导航栏里的Li
var imgCount = $('sl_ul').getElementsByTagName('img').length;//获取图的个数
for (var i = 0; i < imgCount; i++) {
var li=document.createElement('li');//动态创建一个Li标签
li.innerHTML=i+1;
if(i==0){
li.className='current';
}
//给每个创建出来的li动态添加索引值,为下面的序号定值,再点击序号按钮时以便找到下标换图
li.setAttribute("index", i);
//2.2注册li的点击事件:轮播图滚动
li.onclick=function(){
//排他思想,搞定li的样式
var lis=$('sc_nav').getElementsByTagName('li');
for (var i = 0; i < lis.length; i++) {
lis[i].className="";
}
this.className="current";
//设置动画的target让轮播图滚动起来
target=this.getAttribute('index')* -800;
}
//
$('sc_nav').appendChild(li);

}
//3.启动缓动动画定时器在window.onload理
var leader =0;
var target =0;
setInterval(function(){
leader=leader+(target-leader)/20;
$('sl_ul').style.left=leader+"px";
},10);

//4.右箭头点击事件:next
$('next').onclick=function(){
if(target>-800*4){
target-=800;
}else{
target=0;//如果已经是最后一张图,就直接滚动回第一张图
}
setNavCurrent();
}
//.左箭头点击事件:prev
$('prev').onclick=function(){
if(target<0){
target+=800;
}
setNavCurrent();
}
//让nav中的li跟随箭头的点击改变选中状态
function setNavCurrent(){
var index = Math.abs(target/800);//拿到索引
var lis=$('sc_nav').getElementsByTagName('li');
for (var i = 0; i < lis.length; i++) {
lis[i].className="";
}
lis[index].className='current';
}

}
</script>
</head>
<body>
<div class="box" id="scroll">
<div class="slider" id="sl">
<ul id="sl_ul">
<li><img src="imgs/1.jpg" alt=""></li>
<li><img src="imgs/2.jpg" alt=""></li>
<li><img src="imgs/3.jpg" alt=""></li>
<li><img src="imgs/4.jpg" alt=""></li>
<li><img src="imgs/5.jpg" alt=""></li>
</ul>
</div>
<ul class="scroll_nav" id="sc_nav">
<!-- <li class="current">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li> -->
</ul>
<span class="arr arr_prev" id="prev"><</span>
<span class="arr arr_next" id="next">></span>
</div>
</body>
</html>

bootstrap中的轮播图不需要写js脚本,我们可以使用bootstrap中的定义好的属性进行编写

例如:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<link rel="stylesheet" href="css/bootstrap.min.css" />
<script type="application/javascript" src="js/jquery-1.11.1.min.js"></script>
<script language="JavaScript" src="js/bootstrap.min.js"></script>
<script language="JavaScript">

</script>
<style type="text/css">
#turn img{
width:800px;
height: 400px;
}
</style>
</head>
<body>
<!--
焦点轮播图:data-ride="carousel"页面加载完毕后立马开始轮播
-->
<div class="container">
<div class="row">
<div class="col-md-9">
<div data-ride="carousel" id="carousel_container" class="carousel slide">
<!--图片容器-->
<!--carousel-inner:让图片水平排列-->
<div class="carousel-inner">
<div class="item" id="turn">
<img src="img/pic01.jpg" class="text-center" />

<h4 class="carousel-caption">hello</h4>
</div>
<div class="item active"><img src="img/pic02.jpg" /></div>
<div class="item"><img src="img/pic03.jpg" /></div>
</div>
<!--小圆圈容器-->
<ol class="carousel-indicators">
<li data-slide-to="0" data-target="#carousel_container"></li>
<li data-slide-to="1" data-target="#carousel_container"></li>
<li data-slide-to="2" data-target="#carousel_container"></li>
</ol>
<!--左右按钮-->
<a href="#carousel_container" data-slide="prev" class="left carousel-control">
<span class="glyphicon glyphicon-chevron-left"></span>
</a>
<a href="#carousel_container" data-slide="next" class="right carousel-control">
<span class="glyphicon glyphicon-chevron-right"></span>
</a>
</div>

</div>
<div class="col-md-3"></div>
</div>

</div>
</body>
</html>

js轮播图和bootstrap中的轮播图的更多相关文章

  1. Bootstrap中轮播图

    Bootstrap中轮播图插件叫作Carousel,为了清晰的表明每个标签在这里是什么意思,我把解释写在了下面的代码中. <!-- 以下容器就是整个轮播图组件的整体, 注意该盒子必须加上 cla ...

  2. 2.bootstrap练习笔记-轮播图

    bootstrap练习笔记-轮播图 1.要使用轮播图,首先要将其放在一个主div里面 设置id为myCaroysel class为carousel slide 设置id是标识这个div是轮播图,等到l ...

  3. bootstrap中的动态加载出来的图片轮播中的li标签中的class="active"的动态添加移除

    //该方法是在slide改变时立即触发该事件, $('#myCarousel').on('slide.bs.carousel', function () { $("#myCarousel o ...

  4. angularjs中使用轮播图指令swiper

    我们在angualrjs移动开发中遇到轮播图的功能 安装 swiper  npm install --save swiper   或者 bower install --save swiper 引入文件 ...

  5. android中广告轮播图总结

    功能点:无限轮播.指示点跟随.点击响应.实现思路: 1.指示点跟随,指示点通过代码动态添加,数量由图片数量决定. 在viewpager的页面改变监听中,设置点的状态选择器enable,当前页时,set ...

  6. 使用BootStrap框架中的轮播插件

    在使用bootstrap框架中的轮播插件时,效果做出来后,无法通过点击小圆行的按钮来选择特定的图片. 后面发现是最开始的<div>标签中少写了一个id.一开始<div>标签是这 ...

  7. js渐隐渐现透明度变化淡入淡出轮播图

    js渐隐渐现透明度变化淡入淡出轮播图.焦点图 一些广告banner展示常见. (附件) <!DOCTYPE html> <html> <head> <meta ...

  8. 基于bootstrap的图片轮播效果展示

    <!DOCTYPE html><html lang="zh-CN"> <head> <meta charset="utf-8&q ...

  9. jQuery轮播图(手动点击轮播)

    下面来看看最终做的手动点击轮播效果: 一.原理说明 (1)首先是轮播图的架构,我采用了一个最外边的大div包住两个小div,一个小div里面放四张图片,另一个小div里面放四个数字按钮 (2)对最外边 ...

随机推荐

  1. 牛客练习赛53 (E 老瞎眼 pk 小鲜肉) 线段树+离线

    考试的时候切的,类似HH的项链~ code: #include <bits/stdc++.h> #define ll long long #define M 500003 #define ...

  2. Linux下的电路设计辅助软件

    造冰箱的大熊猫@cnblogs 2019/8/21 最近调研了以下开源的电路设计辅助软件(EDA),汇总如下 1.gEDA 官网:geda-project.org 老牌的开源EDA软件,诞生于上世纪9 ...

  3. LOJ2341. 「WC2018」即时战略 [动态点分治]

    LOJ 思路 考虑最蠢的暴力:枚举2~n,从1拉一条到他们的链,需要查询\(n^2\)次,显然不能通过. 考虑优化:如果拉的第一个点已经被访问过了,那么类似二分的做法,一次往那个方向多跳几步. 多跳几 ...

  4. Atcoder ABC 139A

    Atcoder ABC 139A 题意: 给你两个字符串,记录对应位置字符相同的个数 $ (n=3) $ 解法: 暴力枚举. CODE: #include<iostream> #inclu ...

  5. Linux操作系统load average过高,kworker占用较多cpu

    Linux操作系统load average过高,kworker占用较多cpu 今天巡检发现,mc1的K8S服务器集群有些异常,负载不太均衡.其中10.2.75.32-34,49的load averag ...

  6. ph:做参考

    1  波动学 <伯克利物理学教程>第三卷  上.下册2  场论(朗道)3  场论与粒子物理学(上册)(李政道)出国留学必备书之一!4  场论与粒子物理学(下册)(李政道)5  非平衡态热力 ...

  7. linux安装后需要进行的一些基本设置

    修改网络: 在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-ens33 然后重启网络服务:systemctl restart network.servic ...

  8. Linux命令:hexdump

    hexdump是Linux下的一个二进制文件查看工具,它可以将二进制文件转换为ASCII.八进制.十进制.十六进制格式进行查看. 指令所在路径:/usr/bin/hexdump 命令语法: hexdu ...

  9. java递归复制文件夹

    package com.haiyisoft.hyoaService; import java.io.BufferedInputStream;import java.io.BufferedOutputS ...

  10. IO调度 | Linux块设备中的IO路径及调度策略

    当文件系统通过submit_bio提交IO之后,请求就进入了通用块层.通用块层会对IO进行一些预处理的动作,其目的是为了保证请求能够更加合理的发送到底层的磁盘设备,尽量保证性能最佳.这里面比较重要的就 ...