我怎样才能在客户端写一个承诺
How can i write a promise in Client Side
我不知道我已经搜索了很多,当我应用代码时,控制台弹出错误,其中有很多未定义的东西我想写一个简单的承诺
$(document).ready(function(event){
$('.hover-effect').on('click',function(event){
filters.forEach(function(vertical){
$("div[data-filter=" + vertical + "]").removeClass("selected");
})
$(this).addClass('selected');
const datafilter = $(this).attr('data-filter');
$(".verticals").hide();
$('#'+datafilter).show();
});
});
for 循环完成后,我必须添加 class 选定项和其他内容
$(document).ready(function(event){
$('.hover-effect').on('click',function(event){
const datafilter = $(this).attr('data-filter');
var promise=new Promise(function(resolve,reject){
filters.forEach(function(vertical){
$("div[data-filter=" + vertical + "]").removeClass("selected");
});
resolve('success');
});
promise.then(function(value){
$("div[data-filter=" + datafilter + "]").addClass("selected");
$(".verticals").hide();
$('#'+datafilter).show();
});
});
});
您想要实现的目标尚不清楚,看起来您有一个具有悬停效果的按钮列表 class,当单击所有其他按钮时,它们的选择 class 应该被删除并且单击的元素应添加选定的 class。
您的这部分代码效果很好:
const datafilter = $(this).attr('data-filter');
$(".verticals").hide();
$('#'+datafilter).show();
话虽如此,我很确定这就是您要实现的目标。
$(document).ready(function(event){
$('.hover-effect').on('click',function(e) {
$(".hovereffect").removeClass('selected');
$(this).addClass('selected');
const datafilter = $(this).attr('data-filter');
$(".verticals").hide();
$('#'+datafilter).show();
});
});
注意: 如果您在其他地方使用 "hovereffect" class,您应该创建一个新的 class 来实现此功能。
我不知道我已经搜索了很多,当我应用代码时,控制台弹出错误,其中有很多未定义的东西我想写一个简单的承诺
$(document).ready(function(event){
$('.hover-effect').on('click',function(event){
filters.forEach(function(vertical){
$("div[data-filter=" + vertical + "]").removeClass("selected");
})
$(this).addClass('selected');
const datafilter = $(this).attr('data-filter');
$(".verticals").hide();
$('#'+datafilter).show();
});
});
for 循环完成后,我必须添加 class 选定项和其他内容
$(document).ready(function(event){
$('.hover-effect').on('click',function(event){
const datafilter = $(this).attr('data-filter');
var promise=new Promise(function(resolve,reject){
filters.forEach(function(vertical){
$("div[data-filter=" + vertical + "]").removeClass("selected");
});
resolve('success');
});
promise.then(function(value){
$("div[data-filter=" + datafilter + "]").addClass("selected");
$(".verticals").hide();
$('#'+datafilter).show();
});
});
});
您想要实现的目标尚不清楚,看起来您有一个具有悬停效果的按钮列表 class,当单击所有其他按钮时,它们的选择 class 应该被删除并且单击的元素应添加选定的 class。
您的这部分代码效果很好:
const datafilter = $(this).attr('data-filter');
$(".verticals").hide();
$('#'+datafilter).show();
话虽如此,我很确定这就是您要实现的目标。
$(document).ready(function(event){
$('.hover-effect').on('click',function(e) {
$(".hovereffect").removeClass('selected');
$(this).addClass('selected');
const datafilter = $(this).attr('data-filter');
$(".verticals").hide();
$('#'+datafilter).show();
});
});
注意: 如果您在其他地方使用 "hovereffect" class,您应该创建一个新的 class 来实现此功能。