JavaScript代码优化
下面是我的javascript代码,有没有更好的方法来编写我的代码?我认为我的概念不太好。下面的“$”代表“document.getElementById”,为了更好地查看我使用的“$”,代码是javascript而不是JQueryJavaScript代码优化,javascript,Javascript,下面是我的javascript代码,有没有更好的方法来编写我的代码?我认为我的概念不太好。下面的“$”代表“document.getElementById”,为了更好地查看我使用的“$”,代码是javascript而不是JQuery function() { if (1) { $("AprEmail1").style.display = ""; $("chkApp1").style.display = ""; $("AprEmail2").
function() {
if (1) {
$("AprEmail1").style.display = "";
$("chkApp1").style.display = "";
$("AprEmail2").style.display = "";
$("chkApp2").style.display = "";
$("chkApp2").disabled = false;
$("AprEmail3").style.display = "";
$("chkApp3").style.display = "";
$("chkApp3").disabled = false;
}
else if (2) {
$("AprEmail1").style.display = "";
$("chkApp1").style.display = "";
$("AprEmail2").style.display = "";
$("chkApp2").style.display = "";
$("chkApp2").disabled = true;
$("AprEmail3").style.display = "";
$("chkApp3").style.display = "";
}
else if (3) {
$("AprEmail1").style.display = "";
$("chkApp1").style.display = "";
$("AprEmail2").style.display = "";
$("chkApp2").style.display = "";
$("chkApp2").disabled = true;
$("AprEmail3").style.display = "";
$("chkApp3").style.display = "";
$("chkApp3").disabled = true;
}
else {
$("AprEmail1").style.display = "none";
$("chkApp1").style.display = "none";
$("AprEmail2").style.display = "none";
$("chkApp2").style.display = "none";
$("AprEmail3").style.display = "none";
$("chkApp3").style.display = "none";
}
}
是的,有更好的办法。根据要应用的谓词,在元素上使用类值来对应它们的关系,然后让代码按类而不是按id进行操作 如果您的JavaScript通过在某个父元素(如
标记)上设置一个类(基于该条件)来处理这些不同的条件,那么您主要可以使用CSS来完成。然后,您可以拥有如下CSS规则
.condition1 .hidden-when-1 { display: none; }
.condition2 .hidden-when-2 { display: none; }
等等。当
标记具有类“condition1”时,所有具有类“hidden-When-1”的元素都将被隐藏。您可以将它们分组到div容器中,然后显示和隐藏div。那会使它更干净。此外,您还可以研究Jquery。它允许您编写更简洁的代码 你确定那是你的密码吗?目前,您的第一个if
子句将始终运行,因此您可以删除所有其他块。。。。。。剩下的就不会了。从来没有。@pimvdb:是的,实际上我删除了条件,因为它们太长了,无法在这里使用。我只需要一个更好的代码来删除重复的代码。