gpt4 book ai didi

javascript - 条件语句混淆 - If 3 显示元素

转载 作者:行者123 更新时间:2023-12-03 04:33:33 25 4
gpt4 key购买 nike

我正在尝试编写一个函数,允许用户选择 3 个元素,一旦选择了 3 个元素,就会出现一个“下一步”按钮。

然后,我的用户应该被允许取消选择一个答案并选择另一个答案,取消选择后,下一个按钮应该淡出,因为现在只选择了 2 个元素。

我正在努力让这个工作有效......

https://jsfiddle.net/p7uhf12L/

$('.answer').on('click',function(e){
e.preventDefault();

if( $('.moreAnswers .selected').length === 3 ){
$('.next-question').fadeIn();
$('.next-question').css('opacity',1);
if($(this).is('.selected')){
$(this).removeClass('selected');
}
} else {
if($(this).is('.selected')){
$(this).removeClass('selected');
$('.next-question').css('opacity',0);
} else {
$(this).addClass('selected');
}
$('.next-question').fadeOut();
$('.next-question').css('opacity',0);
}

if( $('.moreAnswers .selected').length === 3 ){
$('.next-question').fadeIn();
$('.next-question').css('opacity',1);
} else {
$('.next-question').fadeOut();
$('.next-question').css('opacity',0);
}

} );

最佳答案

您可以像这样简化代码:

    $('.answer').on('click',function(e){
e.preventDefault();

var selected = $('.moreAnswers > .selected').length;

if(selected == 3){ //if selected is 3 we focus on just deselecting
if($(this).is('.selected')){ //deselcted and remove links
$(this).removeClass('selected');
$('.next-question').fadeOut();
$('.next-question').css('opacity',0);
}
}else{ //toggle and check if this was the 3rd one
if($(this).is('.selected')){
$(this).removeClass('selected');
} else {
$(this).addClass('selected');
if(selected == 2){
$('.next-question').fadeIn();
$('.next-question').css('opacity',1);
}
}
}
} );

样本FIDDLE

关于javascript - 条件语句混淆 - If 3 显示元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43390494/

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