Javascript:实操---类似京东图片点击切换

CSS部分

<style>
*{ margin:0; padding:0;}
#div1{ width:670px; height:150px; margin:20px auto; position:relative; overflow:hidden;}
.out{ width:5000px; height:150px; overflow:hidden; position:absolute;}
.out ul{ height:150px; list-style:none; position:absolute; left:0;}
.out li,.out img{ float:left;}
.left{ position:absolute; height:150px; width:20px; background:white url(images/6.jpg) center center no-repeat; opacity:0.7; left:0; top:0;}
.right{ position:absolute; height:150px; width:20px; background:white url(images/7.jpg) center center no-repeat; opacity:0.7; right:0; top:0;}
</style>

HTML部分

<div id="div1">
    <div class="out">
    <ul>
        <li><img src="images/1.jpg" /></li>
        <li><img src="images/2.jpg" /></li>
        <li><img src="images/3.jpg" /></li>
        <li><img src="images/4.jpg" /></li>
        <li><img src="images/5.jpg" /></li>
    </ul>
    </div>
    <div class="left"></div>
    <div class="right"></div>
</div>JS部分

<script src="tween.js"></script>

<script>

function byClass(el,oClass){

  var aElement=el.getElementsByTagName("*");

  var arr=[];

  for(var i=0;i<aElement.length.i++){

    if(aElement[i].className==oClass){

      arr.push(aElement[i]);

    }

  }

  return arr;

}

window.onload=function(){

  var oOut=byClass(document,"out")[0];

  var oLeft=byClass(document,"left")[0];

  var oRight=byClass(document,"right")[0];

  var aLi=oOut.getElementsByTagName("li");

  var index=0;

  var timer=null

  var t=30;

  var endT=30;

  function move(){

    var start=oOut.offsetLeft;

    var end=-index*aLi[0].offsetWidth;

    var change=end-start;

    t=0;

    clearInterval(timer);

    timer=setInterval(function(){

      t++;

      if(t==endT){

        clearInterval(timer);

      }

      oOut.style.left=Tween.Expo.easeOut(t,start,change,endT)+"px";

    },30);

  }

  oLeft.onclick=function(){

    if(oOut.offsetLeft%aLI[0].offsetWidth==0){

      index--;

      if(index<0){

        index=aLi.length-1;

      }

      move();

    }

  }

  oRight.onclick=function(){

    if(oOut.offsetLeft%aLi[0].offsetWidth==0){

      index++;

      if(index>=aLi.length-1){

        index=0;

      }

      move();

    }

  }

}

</script>

Javascript:实操---类似京东图片点击切换

时间: 2025-01-14 15:13:16

Javascript:实操---类似京东图片点击切换的相关文章

关于使用JavaScript实现图片点击切换(附带改变导航图片 方案二)

具体需求见方案一. 这种方案是老师给出的,相比方案一更加专业. 1 <!DOCTYPE html> 2 <html> 3 <head lang="en"> 4 <meta charset="UTF-8"> 5 <title></title> 6 <style type="text/css"> 7 #main{ 8 border: solid 1px red; 9

3d图片点击切换

效果图: 代码块: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{ margin: 0px; padding: 0px; } body{ background: #000000; overflow-x: hidden; } #banner{

缩略图+多组图片点击切换

1.做的弹出内容,不知道是不是老师要求的效果. 2.做元素坐标练习的时候有几个问题 1.纠结% 这个运算符的时候,纠结了很久,还是没用,没太清楚它的用法,适合用在什么地方. 2.本来的思路是  写 li 的 style 属性,背景颜色位置单独写,发现有点罗嗦, 于是就尝试都写在ul里面,但是有判断语句的时候,就不知道怎么写了.

CSS3新增文本属性实现图片点击切换效果

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Keywords" content="关键词"> <meta name="Description" content="描述"> <title>CSS3新增文

JS-DOM:基础实操---点击回到顶部

CSS部分 <style type="text/css">body{    height: 3000px;}#div1{    height: 100px;    width: 100px;    background-color: #ccc;    position: fixed;    right: 0;    bottom: 0;}    </style> HTML部分 <body><div id="div1">

Javascript:实操---自定义滚动条

CSS部分 <style type="text/css">*{    margin: 0;    padding: 0;}#wrap{    width: 300px;    height: 400px;    overflow: hidden;    position: relative;    border: 1px solid #ccc;    margin: 100px;}    #content{    position: absolute;    font-si

Javascript:实操---右键显示列表

JS部分 <script type="text/javascript"> window.onload=function(){ var oUl1=document.getElementById("ul1"); var oLi1=oUl1.children; var bodyWidth=document.documentElement.clientWidth||document.body.clientWidth; var bodyHeight=documen

Javascript:实操---拖拽(完整版)

CSS部分 <style type="text/css">body{height: 3000px;    width: 3000px;}#div1{    height: 100px;    width: 100px;    background-color: #ccc;    position: absolute;}</style> HTML部分 <div id="div1">DFDSF</div>我发的思考附近的刷

Javascript:实操---放大镜效果(2)

CSS部分<style type="text/css">/* body{    padding: 10px;} */#minWrap{    width: 350px;    height: 350px;    border: 1px solid #ccc;    position: relative;}    #slider{    height: 175px;    width: 175px;    background-color: yellow;    opacit