jquery 圆形旋转图片滚动切换效果

下面我将为你讲解实现“jQuery 圆形旋转图片滚动切换效果”的步骤和示例。

思路分析

1.准备好一个存放图片的容器和导航圆点。

2.对于导航圆点,可以使用 HTML 标签结构模拟,或者使用 CSScircle

3.图片在容器中使用 HTML 标签 img 插入。

4.为图片容器中的图片添加相同的宽度和高度,使得图片形成一个正方形。

5.使用 jQuery 控制图片的旋转和切换。

6.当鼠标悬停在导航圆点上时,切换到对应的图片。

7.当鼠标点击导航圆点时,滚动到对应的图片位置。

实现步骤

步骤1:HTML 结构

创建HTML文件,并准备好容器和导航圆点。

<div class="slider">
  <ul class="img-box">
    <li><img src="img/1.jpg" /></li>
    <li><img src="img/2.jpg" /></li>
    <li><img src="img/3.jpg" /></li>
    <li><img src="img/4.jpg" /></li>
    <li><img src="img/5.jpg" /></li>
  </ul>
  <ul class="control-nav">
    <li class="active"></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
  </ul>
</div>

步骤2:CSS 样式

使用 CSS 样式,设置容器的宽度和高度,并将容器中的图片使用绝对定位,进行布局。同时,对于导航圆点,可以使用 CSS 画圆。

.slider {
  width: 560px;
  height: 560px;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid #ccc;
}
.img-box {
  width: 1560px;
  height: 560px;
  position: absolute;
  left: -500px;
}
.img-box li {
  width: 560px;
  height: 560px;
  float: left;
  list-style: none;
}
.control-nav {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  padding: 0;
  width: 100%;
  text-align: center;
}
.control-nav li {
  width: 10px;
  height: 10px;
  list-style: none;
  background: #ccc;
  display: inline-block;
  border-radius: 50%;
  margin: 0 8px;
  cursor: pointer;
}
.control-nav li.active {
  background-color: #333;
  cursor: default;
}

步骤3:JavaScript 代码

使用 jQuery 控制滚动效果和导航圆点的悬停事件和点击事件。

$(function() {

  var len = $('.slider li').length,
    index = 0,
    timer = null;

  $('.control-nav li').eq(0).addClass('active');

  // 鼠标悬停圆点,切换到对应图片
  $('.control-nav li').mouseover(function() {
    index = $(this).index();
    $(this).addClass('active').siblings().removeClass('active');
    $('.img-box').stop().animate({ 'left': -index * 560 }, 500);
  });

  // 自动滚动
  timer = setInterval(function() {
    index++;
    if (index >= len) {
      index = 0;
    }
    $('.control-nav li').eq(index).addClass('active').siblings().removeClass('active');
    $('.img-box').stop().animate({ 'left': -index * 560 }, 500);
  }, 2000);

  // 鼠标悬停,停止自动滚动
  $('.slider').mouseover(function() {
    clearInterval(timer);
  });

  // 鼠标离开,继续自动滚动
  $('.slider').mouseout(function() {
    timer = setInterval(function() {
      index++;
      if (index >= len) {
        index = 0;
      }
      $('.control-nav li').eq(index).addClass('active').siblings().removeClass('active');
      $('.img-box').stop().animate({ 'left': -index * 560 }, 500);
    }, 2000);
  });

});

示例解释

在以上代码中,我们使用了 jQuery 来实现图片的滚动切换效果。其中,图片容器使用 position: absolute 进行绝对定位,导航圆点则使用 position: absolute 进行绝对定位,并使用 transform: translateX(-50%) 对导航圆点进行居中处理。

在 jQuery 部分,我们使用 mouseover()mouseout() 函数控制鼠标悬停事件,并使用 animate() 函数进行图片的滚动切换。

在自动滚动方面,我们使用 setInterval() 函数不断切换图片,变量 index 来控制当前图片的位置。同时,在滚动中需要对导航圆点进行激活状态的切换,使用 addClass() 函数来添加 active 类,并使用 siblings() 函数来选择其他兄弟元素。

以上就是一个简单的 “jQuery 圆形旋转图片滚动切换效果” 的实现示例。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jquery 圆形旋转图片滚动切换效果 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • jQuery UI Button widget()方法

    当我们需要制作按钮样式时,可以使用jQuery UI库中的Button widget()方法来简化代码和实现效果。接下来,我们来详细讲解一下该方法的用法。 Button Widget()方法概述 Button widget()方法是jQuery UI库中的一个方法,可以将一个普通的HTML元素,如按钮(button)、单选框(radio)、复选框(check…

    jquery 2023年5月13日
    00
  • jQWidgets jqxWindow zIndex属性

    下面是对“jQWidgets jqxWindow zIndex属性”的详细讲解: 1. 什么是 jqxWindow jqxWindow 是 jQWidgets UI 组件库中的一个窗口组件,可以用于创建各种弹出窗口、模态窗口、对话框等。它拥有丰富的配置项和事件,可以满足各种窗口需求。其中 zIndex 就是 jqxWindow 的一个属性。 2. zInde…

    jquery 2023年5月12日
    00
  • jQWidgets jqxTreeGrid showHeader属性

    以下是关于 jQWidgets jqxTreeGrid 组件中 showHeader 属性的详细攻略。 jQWidgets jqxTreeGrid showHeader 属性 jQWidgets jqxTreeGrid 的 showHeader 属性用于控制是否显示表头。表头是一行,用于显示列标题。 语法 $(‘#treegrid’).jqxTreeGrid…

    jquery 2023年5月12日
    00
  • jQWidgets jqxGrid pagermode属性

    jQWidgets jqxGrid pagermode属性详解 jQWidgets jqxGrid 是一种表格控件,用于在 Web 应用程序中创建表格。pagermode 属性是 jqxGrid 控件的一个属性,用于设置分页模式。本文将详细解 pagermode 属性的使用方法,并提供两个示例。 属性 pagermode 属性用于设置分页模式。该属性的默认值…

    jquery 2023年5月10日
    00
  • jQuery first()的例子

    以下是关于jQuery中first()方法的完整攻略: 什么是first()方法? first()方法是jQuery中的一个筛选器方法,用于选择匹配元素集合中的第一个元素。 如何使用first()方法? 可以使用以下代码选择第一个元素: $("selector").first(); ` 其中,`selector`是要选择的元素的选择器。 …

    jquery 2023年5月12日
    00
  • jQuery submit()方法

    下面是对“jQuery submit()方法”的详细讲解。 jQuery submit()方法 jQuery submit()方法用于在JQuery中提交表单的事件处理程序。该方法包括以下几个方面: 该方法将被触发一次表单提交后。在表单提交之前和之后立即调用提交事件处理程序。 该方法还可以用于触发虚拟的提交事件。 还可以利用该方法来防止表单提交。 语法 如下…

    jquery 2023年5月12日
    00
  • jQuery Mobile Pagecontainer禁用选项

    可以使用jQuery Mobile的Pagecontainer插件来实现页面的转换和导航控制。禁用Pagecontainer插件中的选项可以在特定的情况下防止用户对不必要的页面转换发生操作。下面是详细攻略: Pagecontainer插件 Pagecontainer插件在jQuery Mobile中是一个非常重要的组件,它允许我们在单个HTML文件中使用多个…

    jquery 2023年5月12日
    00
  • jQuery attribute~=value 选择器

    以下是关于jQuery :button选择器的完整攻略: 什么是jQuery :button选择器? jQuery :button选择器是一种用于选择所有按钮元素的语法。使用这个选择器可以轻松选择所有按钮元素对其进行操作。 如何使用jQuery :button选择器? 可以使用以下代码来选择所有按钮元素: $(":button") 在这个…

    jquery 2023年5月12日
    00
合作推广
合作推广
分享本页
返回顶部