鼠标悬停在图像 jquery 上

MouseHover on image jquery

本文关键字:jquery 图像 悬停 鼠标      更新时间:2023-09-26

请原谅糟糕的英语我正在使用翻译器和 ty 的帮助:)

我有一个问题,脚本适合我想要的鼠标一离开图像的问题2-3-4左图(2-3-4(而不是首字母

    <script type="text/javascript">
    var changetimer;
    function change (id) {
        clearInterval (changetimer);
        function swap() {
            if ( id.src.match ( " images/img1.jpg ")) { = id.src id.src.replace ( " images/img1.jpg ", " images/img2.jpg ") return false; }
            if ( id.src.match ( " images/img2.jpg ")) { = id.src id.src.replace ( " images/img2.jpg ", " images/img3.jpg ") return false; }
            if ( id.src.match ( " images/img3.jpg ")) { = id.src id.src.replace ( " images/img3.jpg ", " images/img4.jpg ") return false; }
            if ( id.src.match ( " images/img4.jpg ")) { = id.src id.src.replace ( " images/img4.jpg ", " images/img1.jpg ") return false; }
        }
        changetimer = setInterval ( Swap , 1500 ) ;
    }
    window.onload = function () {
        var images = document.getElementsByTagName('img');
        for (var i = 0; i < images.length ; i + +) {
            images[i]. onmouseover = function (evt) { change (this) ;}
            images[i]. onmouseout = function (evt) { clearInterval (changetimer); }
        }
    }
    </script>

不必使用这么多 if 语句,你可以写这样的东西:

var array = [];
var images = document.getElementsByTagName ( ' img ');
for (var i=0;i<images.length;i++) {
     array[i] = i;
     images[i].onmouseover = function () { 
        var timer = setInterval(function(){
           array[i]+= 1;
           this.src="images/img"+array[i]+".jpg";
        },1500);
        this.onmouseout = function () { clearInterval (timer); this.onmouseout=null;}
     }
}

您需要做的是更改此行:

images[i]. onmouseout = function (evt) { clearInterval (changetimer); }

以便它撤消 change 函数执行的任何操作。 所以像这样的事情。

images[i]. onmouseout = function (evt( { clearInterval (changetimer(; changeBack(this(; }

其中changeBack是一个函数,它执行与change函数相反的操作。