我有一个响应式布局,并使用 jQuery 创建了一个渐变面板动画元素。我将 jQuery 函数设置为仅在用户超过特定屏幕尺寸时才激活。但是,如果我缩小窗口,该函数仍然运行。
这是我想要实现的目标:
- 当用户滚动浏览器宽度为 1440 像素时,停止该淡入淡出的面板动画。
- 动画停止后,我想重置该区域以显示第一个面板。
- 如果用户向上滚动到该屏幕尺寸以上,请再次启动动画。
这是我的代码,提前感谢您的时间:
// Get the viewport size!
var viewport = $(document).width();
if (viewport >= 1140) {
var InfiniteRotator =
{
init: function()
{
// hard set height of container
$('#circles').height('286.717px');
// initial fade-in time
var initialInterval = 3000;
// interval between items
var itemInterval = 5000;
// cross-fade time
var fadeTime = 2000;
// count number of items
var numberOfItem = $('.rotating-item').length;
// set current item
var currentItem = 0;
// create loop
var infiniteLoop = setInterval(function() {
// initial fade out
$('.rotating-item').eq(currentItem).fadeOut(fadeTime);
// set counter
if (currentItem == numberOfItem -1) {
currentItem = 0;
} else {
currentItem++;
}
// next item fade in
$('.rotating-item').eq(currentItem).fadeIn(fadeTime);
}, itemInterval);
}
}
// go Go GO!
InfiniteRotator.init();
}
请注意:我使用这个很棒的教程来创建褪色面板:http ://trendmedia.com/news/infinite-rotating-images-using-jquery-javascript/