搜索
首页web前端js教程最简单的JavaScript图片轮播代码(两种方法)_javascript技巧

通过改变每个图片的opacity属性:

素材图片:

代码一:

<!DOCTYPE html>
 <html lang="en">
 <head>
  <meta charset="UTF-">
  <title>最简单的轮播广告</title>
  <style>
   body, div, ul, li {
    margin: ;
    padding: ;
   }
   ul {
    list-style-type: none;
   }
   body {
    background: #;
    text-align: center;
    font: px/px Arial;
   }
   #box {
    position: relative;
    width: px;
    height: px;
    background: #fff;
    border-radius: px;
    border: px solid #fff;
    margin: px auto;
   }
   #box .list {
    position: relative;
    width: px;
    height: px;
    overflow: hidden;
    border: px solid #ccc;
   }
   #box .list li {
    position: absolute;
    top: ;
    left: ;
    width: px;
    height: px;
    opacity: ;
    transition: opacity .s linear
   }
   #box .list li.current {
    opacity: ;
   }
   #box .count {
    position: absolute;
    right: ;
    bottom: px;
   }
   #box .count li {
    color: #fff;
    float: left;
    width: px;
    height: px;
    cursor: pointer;
    margin-right: px;
    overflow: hidden;
    background: #F;
    opacity: .;
    border-radius: px;
   }
   #box .count li.current {
    color: #fff;
    opacity: .;
    font-weight: ;
    background: #f
   }
  </style>
 </head>
 <body>
 <div id="box">
  <ul class="list">
   <li class="current" style="opacity: ;"><img  src="/static/imghwm/default1.png"  data-src="img/images/.jpg"  class="lazy"    style="max-width:90%" height="" alt="最简单的JavaScript图片轮播代码(两种方法)_javascript技巧" ></li>
   <li style="opacity: ;"><img  src="/static/imghwm/default1.png"  data-src="img/images/.jpg"  class="lazy"    style="max-width:90%" height="" alt="最简单的JavaScript图片轮播代码(两种方法)_javascript技巧" ></li>
   <li style="opacity: ;"><img  src="/static/imghwm/default1.png"  data-src="img/images/.jpg"  class="lazy"    style="max-width:90%" height="" alt="最简单的JavaScript图片轮播代码(两种方法)_javascript技巧" ></li>
   <li style="opacity: ;"><img  src="/static/imghwm/default1.png"  data-src="img/images/.jpg"  class="lazy"    style="max-width:90%" height="" alt="最简单的JavaScript图片轮播代码(两种方法)_javascript技巧" ></li>
   <li style="opacity: ;"><img  src="/static/imghwm/default1.png"  data-src="img/images/.jpg"  class="lazy"    style="max-width:90%" height="" alt="最简单的JavaScript图片轮播代码(两种方法)_javascript技巧" ></li>
  </ul>
  <ul class="count">
   <li class="current"></li>
   <li class=""></li>
   <li class=""></li>
   <li class=""></li>
   <li class=""></li>
  </ul>
 </div>
 <script>
  var box=document.getElementById('box');
  var uls=document.getElementsByTagName('ul');
  var imgs=uls[].getElementsByTagName('li');
  var btn=uls[].getElementsByTagName('li');
  var i=index=; //中间量,统一声明;
  var play=null;
  console.log(box,uls,imgs,btn);//获取正确
  //图片切换, 淡入淡出效果我是用(transition: opacity .s linear)做的,不纠结、简单 在css里面
  function show(a){    //方法定义的是当传入一个下标时,按钮和图片做出对的反应
   for(i=;i<btn.length;i++ ){
    btn[i].className='';  //很容易看懂吧?每个按钮都先设置成看不见,然后把当前按钮设置成可见。
    btn[a].className='current';
   }
   for(i=;i<img src="/static/imghwm/default1.png"  data-src="jQuery.js"  class="lazy" s.length;i++){ //把图片的效果设置和按钮相同
    imgs[i].style.opacity=;
    imgs[a].style.opacity=;
   }
  }
  //切换按钮功能,响应对应图片
  for(i=;i<btn.length;i++){
   btn[i].index=i; //不知道你有没有发现,循环里的方法去调用循环里的变量体i,会出现调到的不是i的变动值的问题。所以我先在循环外保存住
   btn[i].onmouseover=function(){
    show(this.index);
    clearInterval(play); //这就是最后那句话追加的功能
   }
  }
  //自动轮播方法
 function autoPlay(){
    play=setInterval(function(){ //这个paly是为了保存定时器的,变量必须在全局声明 不然其他方法调不到 或者你可以调用auto.play 也许可以但是没时间试了
    index++;
    index>=imgs.length&&(index=);//可能有优先级问题,所以用了括号,没时间测试了。
    show(index);
   },)
  }
  autoPlay();//马上调用,我试过用window.onload调用这个方法,但是调用之后影响到了其他方法,使用autoPlay所以只能这样调用了
  //div的鼠标移入移出事件
  box.onmouseover=function(){
   clearInterval(play);
  };
  box.onmouseout=function(){
   autoPlay();
  };
  //按钮下标也要加上相同的鼠标事件,不然图片停止了,定时器没停,会突然闪到很大的数字上。 貌似我可以直接追加到之前定义事件中。
 </script>
 </body>
 </html>

代码二:

首先第一步,下载好一个jquery库的插件,jquery.js 网上很多随处可以下载.下载的插件要放在目录下.然后在html文档中链接好

第二步,布局好一个DIV,如:

<div id="scroll">
 <p class="subl">上一张<p/>
 <p class="subr">下一张<p/>
 <ul>
 <li style="background:red;display:block;"></li>
 //上面的li要设定为显示,因为是第一张图片.
 <li style="background:green;"></li>
 <li style="background:gray;"></li>
 <li style="background:orange;"></li>
 </ul>
 </div>

由于方便各位网友下载能够清晰明了,我就没有用图片路径了,因为到你们电脑上就看不到了,这里用背景颜色.

第三步,就到了写CSS的时候了.下面的CSS懂基础的人都看得懂.

#scroll{width:100%; height:180px; background-color:white; position:relative;border-bottom:1px solid gray;}//这里是给整个大的DIV设定属性.
#scroll ul{height:180px; list-style:none;}//DIV下的UL属性.
#scroll ul li{width:100%; height:180px;margin:0px; padding:0px; display:none;}//DIV下的UL下的LI属性.注意:display:none;因为要将所有的li隐藏了先.当点击的时候在显示出来.
 .subl{position:absolute; bottom:20px; left:40%; width:80px;height:20px; line-height:20px; text-align:center;font-size:16px;font-weight:bold; cursor:pointer;}//上一张按钮的属性.注意一个绝对定位.
 .subr{
position:absolute;
bottom:20px; right:40%;
width:80px;height:20px; line-height:20px; text-align:center;font-size:16px;font-weight:bold;cursor:pointer; 
}//下一张按钮的属性.注意一个绝对定位.
.subr:hover{ background:yellow;border-radius:10px;}
.subl:hover{ background:yellow;border-radius:10px;}
//以上两个hover是鼠标经过的效果.

第四步,就是jquery代码了!也很简单.先将代码看一遍,你就会用了!

<script type="text/javascript">
/*轮播*/
 $(function(){
 var i=0;
 var len=$("#scroll ul li").length-1;
 $(".subl").click(function(){
 if(i==len){
i=-1;
}
i++;
$("#scroll ul li").eq(i).fadeIn().siblings().hide();
 });
//到这里分开!上面的是上一张点击的效果代码,下面的是下一张点击的效果代码.
 $(".subr").click(function(){//获取类名的点击事件.
 if(i==0){
i=len+1;
}
i--;
$("#scroll ul li").eq(i).fadeIn().siblings().hide();
 });
 });
 /*轮播*/
</script>

四步轻松搞定一个简单的轮!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
在JavaScript中替换字符串字符在JavaScript中替换字符串字符Mar 11, 2025 am 12:07 AM

JavaScript字符串替换方法详解及常见问题解答 本文将探讨两种在JavaScript中替换字符串字符的方法:在JavaScript代码内部替换和在网页HTML内部替换。 在JavaScript代码内部替换字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 该方法仅替换第一个匹配项。要替换所有匹配项,需使用正则表达式并添加全局标志g: str = str.replace(/fi

构建您自己的Ajax Web应用程序构建您自己的Ajax Web应用程序Mar 09, 2025 am 12:11 AM

因此,在这里,您准备好了解所有称为Ajax的东西。但是,到底是什么? AJAX一词是指用于创建动态,交互式Web内容的一系列宽松的技术。 Ajax一词,最初由Jesse J创造

如何创建和发布自己的JavaScript库?如何创建和发布自己的JavaScript库?Mar 18, 2025 pm 03:12 PM

文章讨论了创建,发布和维护JavaScript库,专注于计划,开发,测试,文档和促销策略。

如何在浏览器中优化JavaScript代码以进行性能?如何在浏览器中优化JavaScript代码以进行性能?Mar 18, 2025 pm 03:14 PM

本文讨论了在浏览器中优化JavaScript性能的策略,重点是减少执行时间并最大程度地减少对页面负载速度的影响。

如何使用浏览器开发人员工具有效调试JavaScript代码?如何使用浏览器开发人员工具有效调试JavaScript代码?Mar 18, 2025 pm 03:16 PM

本文讨论了使用浏览器开发人员工具的有效JavaScript调试,专注于设置断点,使用控制台和分析性能。

如何构建简单的jQuery滑块如何构建简单的jQuery滑块Mar 11, 2025 am 12:19 AM

本文将引导您使用jQuery库创建一个简单的图片轮播。我们将使用bxSlider库,它基于jQuery构建,并提供许多配置选项来设置轮播。 如今,图片轮播已成为网站必备功能——一图胜千言! 决定使用图片轮播后,下一个问题是如何创建它。首先,您需要收集高质量、高分辨率的图片。 接下来,您需要使用HTML和一些JavaScript代码来创建图片轮播。网络上有很多库可以帮助您以不同的方式创建轮播。我们将使用开源的bxSlider库。 bxSlider库支持响应式设计,因此使用此库构建的轮播可以适应任何

jQuery矩阵效果jQuery矩阵效果Mar 10, 2025 am 12:52 AM

将矩阵电影特效带入你的网页!这是一个基于著名电影《黑客帝国》的酷炫jQuery插件。该插件模拟了电影中经典的绿色字符特效,只需选择一张图片,插件就会将其转换为充满数字字符的矩阵风格画面。快来试试吧,非常有趣! 工作原理 插件将图片加载到画布上,读取像素和颜色值: data = ctx.getImageData(x, y, settings.grainSize, settings.grainSize).data 插件巧妙地读取图片的矩形区域,并利用jQuery计算每个区域的平均颜色。然后,使用

如何使用源地图调试缩小JavaScript代码?如何使用源地图调试缩小JavaScript代码?Mar 18, 2025 pm 03:17 PM

本文说明了如何使用源地图通过将其映射回原始代码来调试JAVASCRIPT。它讨论了启用源地图,设置断点以及使用Chrome DevTools和WebPack之类的工具。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。