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

所属分类: 网络编程 / JavaScript 阅读数: 1293
收藏 0 赞 0 分享

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

<div class="imageRotation container">
  <div class="imageBox">
    <img src="images/chugui.jpg">
    <img src="images/ad_auto.jpg">
    <img src="images/ad_home.jpg">
    <img src="images/ad_nba.jpg">
    <img src="images/ad_stock.jpg">
    <img src="images/ad_yuetu.jpg">
  </div>
  <div class="iconBox">
    <span rel="1" class="active">1</span>
    <span rel="2">2</span>
    <span rel="3">3</span>
    <span rel="4">4</span>
    <span rel="5">5</span>
    <span rel="6">6</span>
  </div>
</div>

 

//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实现图片向左向右切换效果的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

微信小程序对接七牛云存储的方法

本篇文章主要介绍了小程序对接七牛云存储的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

jquery easyui如何实现格式化列

本篇文章主要介绍了jquery easyui如何实现格式化列 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

关于前后端json数据的发送与接收详解

这篇文章主要给大家介绍了关于前后端json数据发送与接收的相关资料,文中通过示例代码详细介绍了关于flask中的json数据接收和前端发送json数据等内容,需要的朋友可以参考借鉴,下面来一起看看吧。
收藏 0 赞 0 分享

Angular.js中上传指令ng-upload的基本使用教程

这篇文章主要给大家介绍了关于Angular.js中上传指令ng-upload的基本使用方法,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
收藏 0 赞 0 分享

利用JavaScript如何查询某个值是否数组内

这篇文章主要给大家介绍了关于利用JavaScript如何查询某个值是否数组内的相关资料,文中通过示例代码分别介绍了实现该问题的一些解决方法是否可行,需要的朋友可以参考借鉴,下面跟着小编来一起学习学习吧。
收藏 0 赞 0 分享

webpack实现热加载自动刷新的方法

本文介绍了webpack实现热加载自动刷新的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Vue的Flux框架之Vuex状态管理器

本文内容主要参考官方教程,为了方便理解,用更加通俗的文字讲解Vuex,也原文内容做一些重点引用。希望会对你有所帮助。
收藏 0 赞 0 分享

Angular.js中$resource高大上的数据交互详解

这篇文章主要给大家介绍了关于Angular.js中$resource高大上的数据交互的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用angular.js具有一定的参考学习价值,需要的朋友们下面跟着小编来一起看看吧。
收藏 0 赞 0 分享

webpack配置sass模块的加载的方法

本篇文章主要介绍了webpack加载sass配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Vue框架中正确引入JS库的方法介绍

最近在学习使用vue框架,在使用中遇到了一个问题,查找相关资料终于找了正确的姿势,所以这篇文章主要给大家介绍了关于在Vue框架中正确引入JS库的方法,需要的朋友可以参考借鉴,下面来一起看看吧。
收藏 0 赞 0 分享
查看更多