gpt4 book ai didi

jQuery 将 css left 设置为值 1,完成后设置为值 2?

转载 作者:太空宇宙 更新时间:2023-11-04 10:10:25 25 4
gpt4 key购买 nike

我只是好奇如何实现以下目标:

我创建了一个简单的 slider ,自动向左滑动。初始加载时,幻灯片的排列方式如下:第一张 0% left、第二张 100% left、第三张 200% left。它们会自动向左滑动。

因此,在第一次移动之后,左边的值读取为第一个 -100%、第二个 0%、第三个 100%。下一步,在 3 张幻灯片示例中,left -100% 的元素将变为 left 200%

现在我实现了向左移动/向右移动按钮。虽然向左移动按钮很容易使用,但我在使用向右移动按钮时遇到了很多问题。

问题:

如果没有包含 css left -100% 的幻灯片,则需要将最右边的幻灯片放到该位置。在示例中,具有 css left 200% 的幻灯片需要设置为 -100% 并且位置更改后,应设置为 0%.

问题:

Css left -100% 未设置(幻灯片不会从left 200%移动到-100%再到0%,但直接从 200%0%)。

我使用了 queue,但这不管用,我现在一无所知。

在函数中,我首先运行 each() 来识别具有最高左值的元素。然后我再次运行 each() 让它们移动。一切正常,除了上面的问题。

我怎样才能实现我的目标?

function moveSlidesReverse() {
var slides = jQuery('#main').children('.dfmn-section-slider');
var pos2 = 0;

slides.each(function() {
pos = jQuery(this)[0].style.left;
pos = parseInt(pos.substring(0,pos.indexOf('%')));
if (pos == -100) {
outerSlide = '';
return false;
} else if (pos > pos2) {
pos2 = pos;
outerSlide = jQuery(this).attr('id');
}
});
slides.each(function() {
pos = jQuery(this)[0].style.left;
pos = parseInt(pos.substring(0,pos.indexOf('%')));
if (outerSlide != jQuery(this).attr('id')) {
jQuery(this).removeClass('dfmn-section-slider-static')
.addClass('dfmn-section-slider-animate')
.css('left', (pos+100) + '%');
} else {
jQuery(this).removeClass('dfmn-section-slider-animate')
.addClass('dfmn-section-slider-static')
.css('left', '-100%')
.queue(function() {
jQuery(this).removeClass('dfmn-section-slider-static')
.addClass('dfmn-section-slider-animate')
.css('left', '0%')
.dequeue;
});
}
});
}

最佳答案

我会使用“setInterval”函数让 slider 自行移动。然后我会停止画廊的“MouseEnter”事件的间隔(使用“clearInterval”),最后我会使用“one”函数来激活箭头。

请注意,使用“one”时,您应该在动画的最后绑定(bind)事件;像这样:

$('.NAME').one('click',function(){ "MOVE-YOUR-GALLERY";})

function MOVE-YOUR-GALLERY(){
$(.gallery).animate({....}, 5000, function(){
$('.NAME').one('click',function(){ "MOVE-YOUR-GALLERY";})
} )
}

关于jQuery 将 css left 设置为值 1,完成后设置为值 2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37658635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com