使用 JavaScript 将鼠标悬停在 JavaScript 上时停止一组旋转的对象
stop a rotating set of objects when mouse over with javascript
Javascript用于设置一组要旋转的对象,当鼠标移动到它上面时,我需要停止旋转。我对此仍然很陌生,我猜解决方案很容易,但我就是无法让它工作。我尝试将整个事情放在 if 语句中,但这似乎只是完全破坏了代码我也尝试编写了几种方法来做到这一点,但它们似乎也破坏了代码。
这是只旋转对象的工作JavaScript。
$(window).load(function() { //start after HTML, images have loaded
var InfiniteRotator =
{
init: function()
{
//initial fade-in time (in milliseconds)
var initialFadeIn = 1000;
//interval between items (in milliseconds)
var itemInterval = 5000;
//cross-fade time (in milliseconds)
var fadeTime = 2500;
//count number of items
var numberOfItems = $('.rotating-item').length;
//set current item
var currentItem = 0;
//show first item
$('.rotating-item').eq(currentItem).fadeIn(initialFadeIn);
var infiniteLoop = setInterval(function(){
$('.rotating-item').eq(currentItem).fadeOut(fadeTime);
if(currentItem == numberOfItems -1){
currentItem = 0;
}else{
currentItem++;
}
$('.rotating-item').eq(currentItem).fadeIn(fadeTime);
}, itemInterval);
}
};
InfiniteRotator.init();
});
如果您需要 Html,那么只需说,任何帮助都非常感谢
您应该清除刚刚设置的计时器,并在将鼠标移开时将其重新设置。在infiniteLoop
定义之后尝试一下:
$('.rotating-item').hover(function() {
clearInterval(infiniteLoop);
}, function() {
infiniteLoop = setInterval(function(){
$('.rotating-item').eq(currentItem).fadeOut(fadeTime);
if (currentItem == numberOfItems - 1) {
currentItem = 0;
} else {
currentItem++;
}
$('.rotating-item').eq(currentItem).fadeIn(fadeTime);
}, itemInterval);
}
为了避免代码重复,您还可以在之前定义该重复函数,但这不是绝对必要的。
相关文章:
- 如何在javascript中获取一组复选框值
- 简单的Javascript文本编辑器或一组函数
- 如何在 Javascript 中用一组字符拆分子字符串上的字符串
- 如何使用用户定义的相等函数在Javascript中创建一组用户定义的对象
- Jquery从javascript中选择了一组选定的值
- 合并两个Javascript数组,一次合并三个元素
- 使用javascript在一组元素上切换类
- 在JavaScript中,从一组数组递归地构建一个字典/嵌套对象
- 通过jquery.html()将一组数据传递给javascript函数
- JavaScript-更改一组包含特定文本和变量ID元素的链接
- 学习JavaScript:有没有办法在不使用个人ID的情况下更改一组图像的图像文件
- 如何使用 javascript 一次显示此数组的字符串内容
- 是否可以省略一组中间的 Javascript 函数参数
- 使用 JavaScript 向一组链接中的第一个链接添加一个属性
- 一组图形的Javascript放大镜 - 跨浏览器兼容性
- 如何从一组特定的数字中找到最接近的更高数字:javascript
- 如何使用jQuery/Javascript检查用户是否从一组复选框中选中了至少一个复选框
- 是否有一组限制可用于模拟JavaScript中的函数式编程
- 如何使用 Javascript push() 将一组值推送到数组
- 将一组选中的复选框的值获取到 JavaScript 数组中,并在 ajax 请求中传递它们