这是一个待办事项清单,它很有效,但我知道它可能会更有效率。这样做的目的是在显示或不显示输入文本框之间切换,我还更改了图标。
$("i:first").click(function(){
if($('i:first').attr("class") === "fas fa-plus"){
$('i:first').removeClass("fas fa-plus");
$('i:first').addClass("fas fa-angle-double-up")
$('input').css("display", "block");
}
else if($('i:first').attr("class") === "fas fa-angle-double-up"){
$('i:first').removeClass("fas fa-angle-double-up");
$('i:first').addClass("fas fa-plus")
$('input').css("display", "none");
}
});
发布于 2018-06-09 03:03:04
为什么你不想让它变干呢?代码枯燥是一件非常好的事情,也是你应该始终致力于实现的事情,而不是避免。
我将假设这是翻译中的一个错误,您实际上想要使这段代码枯竭,否则我看不出问题的要点。
因此,可以使用toggleClass()
和toggle()
将单击处理程序减少到两行
$("i:first").click(function() {
$(this).toggleClass('fa-plus fa-angle-double-up');
$('input').toggle();
});
还要注意在处理程序中使用this
来引用被单击的元素。这是您可以进行的另一个优化,这样就不必再次查询DOM来检索您已经引用的元素。
https://stackoverflow.com/questions/50766861
复制相似问题