微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery实现图片向左向右切换效果的简单实例

jQuery实现图片向左向右切换效果的简单实例

rush:xhtml;">
Box">        
Box">                                 

//CSS样式

.container {
  width: 1000px;
  margin: 0 auto;
}

.imageRotation {
  width: 1000px;
  height: 480px;
  position: relative;
  overflow: hidden;
  margin-top: 8px;
}

.imageBox {
  position: absolute;
  overflow: hidden;
  display: block;
  height: 480px;
}

.imageBox img {
  width: 1000px;
  height: 480px;
  float: left;
  border: none;
  display: block;
}

.iconBox {
  position: absolute;
  width: 120px;
  height: 12px;
  line-height: 12px;
  top: 444px;
  right: 20px;
  text-align: center;
}

.iconBox span {
  width: 6px;
  height: 6px;
  border-radius: 10px;
  text-align: center;
  background: #555;
  border: 2px solid #f5f5f5;
  float: left;
  text-indent: -999em;
  margin-left: 5px;
  cursor: pointer;
}

.iconBox span.active {
  width: 6px;
  height: 6px;
  background: #820000;
  border-radius: 10px;
  text-align: center;
  text-indent: -999em;
}

//js逻辑

$(function() {
  $(".imageRotation").each(function() {
    var imageRotation = this,    imageBox = $(imageRotation).children(".imageBox"),    iconBox = $(imageRotation).children(".iconBox"),    iconArr = $(iconBox).children(),    imageWidth = $(imageRotation).width(),    imageNum = $(imageBox).children().size(),    imageRollWidth = imageWidth * imageNum,    activeID = parseInt($($(iconBox).children(".active")).attr("rel")),    nextID = 0;
    var setIntervalID,    setIntervalTime = 3000,    speed = 500;

  //设置 图片容器 的宽度
  $(imageBox).css({
    'width': imageRollWidth + "px"

  });

  //图片切换函数
  function imageRoll(clickID) {
    if (clickID) {
    nextID = clickID;
    } else {
      if (activeID <= 5) {
        nextID = activeID + 1
      } else {
    nextID = 1;
      }
    }

    //图标添加样式、删除样式
    $(iconArr[activeID - 1]).removeClass("active");
    $(iconArr[nextID - 1]).addClass("active");

    $(imageBox).animate({
      left: "-" + (nextID - 1) * imageWidth + "px"

    },speed);
    activeID = nextID;
  }

  setIntervalID = setInterval(imageRoll,setIntervalTime);

  //鼠标移动事件
  $(imageBox).hover(function() {
    clearInterval(setIntervalID);
  },function() {
  setIntervalID = setInterval(imageRoll,setIntervalTime);
});

    //鼠标点击事件
    $(iconArr).click(function() {
      clearInterval(setIntervalID);
      var clickID = parseInt($(this).attr("rel")); //获取当前点击图片的id
      imageRoll(clickID);
      setIntervalID = setInterval(imageRoll,setIntervalTime);
      });
   });
});

以上这篇jQuery实现图片向左向右切换效果的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

原文地址:https://www.jb51.cc/jquery/48661.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐