首页 > 其他分享 >JS轮播图定时播放,鼠标经过轮播图时不停,鼠标离开轮播图时播放速度越来越快

JS轮播图定时播放,鼠标经过轮播图时不停,鼠标离开轮播图时播放速度越来越快

时间:2023-04-06 10:14:38浏览次数:43  
标签:index 轮播 tup 图时 li width background left 鼠标

<!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">
    <title>Document</title>
    <style>
        *{
            padding: 0px;
            margin: 0px;
        }
        .box2{
            position: relative;
            width: 500px;
            height: 400px;
            border: 10px solid rgb(247, 241, 241);
            box-shadow: 10px 10px 10px #aeaeae;
            overflow: hidden;
        }
        .tup{
            position: absolute;
            width: 3000px;
            height: 100%;
            border: 1px solid blueviolet;
        }
        .tup li{
            list-style: none;
           width: 500px;
           height: 400px;
           /* border: 1px solid burlywood; */
           float: left;

        }
        .tup li:nth-child(1){
            background: url(images/大1.jpg);
          
        }
        .tup li:nth-child(2){
            background: url(images/大2.jpg);
        }
        .tup li:nth-child(3){
            background: url(images/大5.png);
        }
        .tup li:nth-child(4){
            background: url(images/大6.jpg);
        }
        .tup li:nth-child(5){
            background: url(images/大7.jpg);
        }
        .tup li:nth-child(6){
            background: url(images/大8.jpg);
        }
        .right{
            position: absolute;
            top: 50%;
            margin-top: -10px;
            right: 20px;
            width: 20px;
            height: 20px;
            background-color:rgba(0,0,0,0.4);
        }
        a{
            color: aliceblue;
            text-decoration: none;
        }
        .left{
            position: absolute;
            top: 50%;
            margin-top: -10px;
            left: 20px;
            width: 20px;
            height: 20px;
            background-color:rgba(0,0,0,0.4);
        }
      
    </style>
</head>
<body>
    <div class="box2">
        <ul class="tup">
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
        <div class="right">
            <a href="#">></a>
        </div>
        <div class="left">
            <a href="#"><</a>
        </div>
    </div>
    
</body>
<script>
const right=document.querySelector('.right');
const left=document.querySelector('.left');
const ul=document.querySelector('.tup');
const box2=document.querySelector('.box2');
let arr=document.querySelectorAll('.tup li');
console.log(arr)
let index=0;
let width=500;
function stepy(){
    ul.style.left=-index*width+'px';
}
right.addEventListener('click',function(){
    index++;
    //如果这只写大于arr.length,最后会多一个空白li
    if(index>=arr.length){
        index=0;
    }
    stepy();
  
})
left.addEventListener('click',function(){
    index--;
    if(index<0){
        index=5;
    }
    -stepy();
})
let xh=setInterval(function(){
  right.click();
   
    
},1000)
box2.addEventListener('mouseenter',function(){
    clearInterval(xh);
   
    console.log(xh);
})

box2.addEventListener('mouseleave',function(){
    clearInterval(xh);
   setInterval(function(){
    right.click();
},1000)

})



</script>
</html>

  解决方法:鼠标离开时,设置的定时器没有命名,也没有关闭定时器

box2.addEventListener('mouseleave',function(){
    clearInterval(xh);
   xh= setInterval(function(){
    right.click();
},1000)

})

 

标签:index,轮播,tup,图时,li,width,background,left,鼠标
From: https://www.cnblogs.com/wyxjava/p/17291758.html

相关文章

  • js 鼠标事件的位置x,y
    1.clientX和clientY与x,yclientX和clientY与x,y一样的,都是客户当前显示的屏幕上(反之可能被卷去)可视区域坐标,指鼠标的坐标,以浏览器显示网页区域的左上角开始,x,y是新浏览器支持2.offsetX,offsetYoffsetX,offsetY针对目标元素(就是被点击的元素)offsetXoffsetY是相对于触发元素不......
  • DOM:让一个元素跟随鼠标移动而移动
    <!DOCTYPEhtml><htmllang="en"><head>  <metacharset="UTF-8">  <metahttp-equiv="X-UA-Compatible"content="IE=edge">  <metaname="viewport"content="width=......
  • js实现文字左右轮播
    <!DOCTYPEhtml><html><head><metacharset="utf-8"><title></title><styletype="text/css">.textDiv{position:relative;......
  • Python 自动化指南(繁琐工作自动化)第二版:二十、使用 GUI 自动化控制键盘和鼠标
    原文:https://automatetheboringstuff.com/2e/chapter20/了解用于编辑电子表格、下载文件和启动程序的各种Python模块是很有用的,但有时您需要使用的应用没有任何模块。在计算机上实现任务自动化的终极工具是你编写的直接控制键盘和鼠标的程序。这些程序可以通过发送虚拟击键......
  • bootstrap之carousel轮播图自定义分页器
    最近要开发一个轮播图的看板页面,试用下bootstrap的轮播图组件,因为分页器的部分需要自定义(文字过长需要放到轮播图区域的外面),使用 Listgroup组件作为轮播图的分页器放在左边。 <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"/><metahttp-equiv=......
  • FastAdmin 中table字段太长,显示省略号,鼠标停留显示文字
    {field:'question',title:__('Question'),operate:false,formatter:function(value,row,index,field){return"<spanstyle='display:block;overflow:hidden;text-overflow:ellipsis;white-space:......
  • Python基础之pyautogui模块(详细总结鼠标键盘操作)
    来源:https://zhuanlan.zhihu.com/p/471275277仅用于个人学习(以防自己忘记)1.GUI控制功能控制鼠标键盘使用的模块为:pyautogui,这个模块操作起鼠标键盘的时候,非常的迅速,而且如果该模块控制了鼠标后,程序比较难关闭,这时我们有两个方法专门针对以上的情况:1.1自动防故障功能 ......
  • Qt音视频开发33-vlc和mpv打开后鼠标打圈圈问题的解决
    一、前言如果采用的vlc句柄模式,如果鼠标停留在句柄控件中会发现在打开后鼠标打圈圈,mpv句柄模式是在关闭后鼠标打圈圈,这两者真是一前一后,这种给人的体验其实很不友好的,播放开始后或者播放完成后鼠标指针居然变成了繁忙,但是当你将鼠标位置从句柄控件中移到外面的时候,他又会自动恢复......
  • Qt学习笔记9——P30-33. 自定义控件封装,鼠标事件,定时器
    P30.自定义控件封装P31.Qt中的鼠标事件P32.定时器1P33.定时器2P30.自定义控件封装(创建了新项目) 添加新的界面和类:右键项目的文件夹(顶层的文件)->Qt——Qt设计师界面类->“选择界面模板”选"Widget"->在"Classname"中取个类名(此案例中改成了SmallWidget)->别的没......
  • C#控制鼠标
    C#控制鼠标using System;using System.Threading;using System.Runtime.InteropServices;using System.Windows.Forms;namespace MouseControl{    class MouseControl    {        /// <summary>        /// 鼠标控制参数   ......