首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

原生js焦点图代码

以下是一个使用原生 JavaScript 实现的简单焦点图代码示例:

代码语言:txt
复制
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <style>
    .slider {
      position: relative;
      width: 500px;
      height: 300px;
      overflow: hidden;
    }

   .slider img {
      position: absolute;
      width: 100%;
      height: 100%;
      opacity: 0;
      transition: opacity 1s ease-in-out;
    }

   .slider img.active {
      opacity: 1;
    }
  </style>
</head>

<body>
  <div class="slider">
    <img src="image1.jpg" alt="Image 1" class="active">
    <img src="image2.jpg" alt="Image 2">
    <img src="image3.jpg" alt="Image 3">
  </div>

  <script>
    const images = document.querySelectorAll('.slider img');
    let currentIndex = 0;

    function showNextImage() {
      images[currentIndex].classList.remove('active');
      currentIndex = (currentIndex + 1) % images.length;
      images[currentIndex].classList.add('active');
    }

    setInterval(showNextImage, 3000);
  </script>
</body>

</html>

基础概念:

  • 通过 CSS 设置图片容器的样式,使其只显示一张图片,并设置图片的绝对定位和过渡效果。
  • 使用 JavaScript 获取所有的图片元素,并通过定时器来控制显示下一张图片。

优势:

  • 不依赖任何第三方库,加载速度快。
  • 实现简单,易于理解和修改。

类型:

  • 基于定时器的自动切换焦点图。
  • 可以添加鼠标悬停暂停切换的功能。

应用场景:

  • 网站首页的轮播广告展示。
  • 产品介绍页面的图片展示。

可能出现的问题及解决方法:

  • 图片加载失败:检查图片路径是否正确。
  • 切换不流畅:优化 CSS 过渡效果的时间和属性。

如果想要添加更多的功能,比如手动切换按钮、导航点等,可以进一步扩展代码。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

input获取焦点 原生js_原生js的input事件

1.onfocus 当input 获取到焦点时触发 2.onblur 当input失去焦点时触发,注意:这个事件触发的前提是已经获取了焦点再失去焦点的时候才会触发该事件,用于判断标签为空。...3.onchange 当input失去焦点并且它的value值发生变化时触发,个人感觉可以用于注册时的确认密码。...onselect 当input里的内容文本被选中后执行,只要选择了就会触发,不是全部选中 8.oninput 当input的value值发生变化时就会触发,(与onchange的区别是不用等到失去焦点就可以触发了...) 使用方法: 以上事件可以直接放到input的属性里,例如: 1 , 可以通过js给input dom元素添加相应的事件, 2 document.getElementByTagName(‘input’

25.8K60
  • 作业-原生js完成轮播图与悬停

    代码亮点:增加图片时,你只需要再加一个li就可以了。不需要改动其他任何代码。 完整代码直接看文章结尾! 首先我们看一下需求 ?...下面我们进入js实现功能的环节。 js 我们先简单构思一下如何让图片自动轮播 假设我们现在有一个定时器,我们传入一个功能,他可以自动切换图片的名称。...下面我们先将图片和列表在js中获取, var lis = document.getElementsByTagName("li"); var img = document.getElementById("...怎么让它悬停在列表12345的时候停止呢,很简单,我们在列表中绑定一个函数,让它停止即可,这里为了代码简洁,我们直接集成到chose函数中即可....=1){ lis[i-2].className = "cout"; } 此时js的完整代码为 <script type

    8K31

    第54天:原生js实现轮播图效果

    一、轮播图的原理: 一系列的大小相等的图片平铺,利用CSS布局只显示一张图片,其余隐藏。通过计算偏移量利用定时器实现自动播放,或通过手动点击事件切换图片。 ?...当你从最后一张图切换回第一张图时,有很大空白,利用两张辅助图来填补这个空白。 这里补充下无缝滚动,直接看代码,复制最后一张图片放置第一张图片前,同时复制第一张图片放置最后一张图片的后面。...并且,将第一张图片辅助图(实际上是实际显示的第5张图片隐藏起来,故设置style="left: -600px;") 三、CSS修饰 1、对盒子模型,文档流的理解,绝对定位问题。...#prev { left: 20px; } #next { right: 20px; } 四、Js...轮播图,顾名思义,是自己会动的图片,这个时候我们需要用到浏览器的内置对象定时器。 对于定时器,有必要说明一下setInterval()跟setTimeout的区别了。

    6.7K21
    领券