是否可以根据某种类型的计时器更改项目类别或ID?每隔1500毫秒,它就会转到hey-there-1,然后在1500ms之后出现hey-there-2 ..等等。我可以控制它经过多少时间间隔。



嘿那里1
嘿那里2
嘿那里3
(回到开头)嘿
等等


谢谢

最佳答案

这样的插件功能将允许您执行所需的操作:

jQuery.fn.rotateClasses = function(classes, interval, max) {
    var currentRotation = 0;
    var timer = null;

    var rotateFn = (function() {
            var currentClass = currentRotation % classes.length;

        var previousClass = currentClass - 1;
        if(previousClass == -1) previousClass = classes.length - 1;

        this.addClass(classes[currentClass]).removeClass(classes[previousClass]);

        currentRotation += 1;

            if(max > 0 && currentRotation >= max) clearInterval(timer);
    })();

    timer = setInterval(rotateFn, interval);

    return this;
};


然后,您可以使用以下命令简单地调用它:

$('#mydiv').rotateClasses(["class1", "class2", "class3"], 1000, 20);


只需根据需要修改参数。第一个参数是要旋转的类的数组,第二个参数是将它们旋转到的间隔,第三个参数是最大迭代次数。如果设置为0,则会迭代无穷大。

关于jquery - jQuery项目类的定时更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1263062/

10-12 06:55