Javascript 使一个元素可见,另49个元素不可见
我对javascript完全陌生,所以请容忍我 我的页面上有50个ID元素。所有选项都设置为“可见性:隐藏”和“位置:固定”。我有一个对应于每个元素的按钮。单击按钮时,会启动一个javascript函数,该函数使相应的元素可见,并且位置:relative。代码如下所示:Javascript 使一个元素可见,另49个元素不可见,javascript,Javascript,我对javascript完全陌生,所以请容忍我 我的页面上有50个ID元素。所有选项都设置为“可见性:隐藏”和“位置:固定”。我有一个对应于每个元素的按钮。单击按钮时,会启动一个javascript函数,该函数使相应的元素可见,并且位置:relative。代码如下所示: document.getElementById("id1").style.position='relative'; document.getElementById("id1").style.visibility='visible
document.getElementById("id1").style.position='relative';
document.getElementById("id1").style.visibility='visible';
function makeVisible( id ){
var idList = ['id1','id2','id3','id4'];
for( var i = 0, l = idList.length; i<l ; i++ ){
document.getElementById(idList[i]).style.position='fixed';
document.getElementById(idList[i]).style.visibility='hidden';
}
document.getElementById(id).style.position='relative';
document.getElementById(id).style.visibility='visible';
}
为了确保只有一个元素是可见的和相对的,我还需要隐藏和固定其他49个元素。我如何在不使用以下代码的情况下实现这一点:
function makeid1visibile()
{
document.getElementById("id1").style.position='relative';
document.getElementById("id1").style.visibility='visible';
document.getElementById("id2").style.position='fixed';
document.getElementById("id2").style.visibility='hidden';
document.getElementById("id3").style.position='fixed';
document.getElementById("id3").style.visibility='hidden';
document.getElementById("id4").style.position='fixed';
document.getElementById("id4").style.visibility='hidden';
// etc...
}
如果有任何帮助,我们将不胜感激,因为对于50个元素,编码行的数量将是惊人的。应该能够用一个循环来处理它,只需输入您希望显示的项目的编号:
function makeIdVisible(id) {
document.getElementById("id" + id).style.position='relative';
document.getElementById("id" + id).style.visibility='visible';
for (var i = 1; i <= 50; i++) {
if (i !== id) {
document.getElementById("id" + i).style.position='fixed';
document.getElementById("id" + i).style.visibility='hidden';
}
}
}
函数makeIdVisible(id){
document.getElementById(“id”+id).style.position='relative';
document.getElementById(“id”+id).style.visibility='visible';
对于(var i=1;i而言,应该能够通过单个循环处理它,只需传入您希望显示的项目编号:
function makeIdVisible(id) {
document.getElementById("id" + id).style.position='relative';
document.getElementById("id" + id).style.visibility='visible';
for (var i = 1; i <= 50; i++) {
if (i !== id) {
document.getElementById("id" + i).style.position='fixed';
document.getElementById("id" + i).style.visibility='hidden';
}
}
}
函数makeIdVisible(id){
document.getElementById(“id”+id).style.position='relative';
document.getElementById(“id”+id).style.visibility='visible';
对于(var i=1;i给你的复选框类名称“someclass”,并按函数选择所有元素documet.getElementsByClassName
给你的复选框类名称“someclass”,并按函数选择所有元素documet.getElementsByClassName
你可以编写这样的函数:
document.getElementById("id1").style.position='relative';
document.getElementById("id1").style.visibility='visible';
function makeVisible( id ){
var idList = ['id1','id2','id3','id4'];
for( var i = 0, l = idList.length; i<l ; i++ ){
document.getElementById(idList[i]).style.position='fixed';
document.getElementById(idList[i]).style.visibility='hidden';
}
document.getElementById(id).style.position='relative';
document.getElementById(id).style.visibility='visible';
}
函数makeVisible(id){
var idList=['id1','id2','id3','id4'];
对于(var i=0,l=idList.length;i您可以编写如下函数:
document.getElementById("id1").style.position='relative';
document.getElementById("id1").style.visibility='visible';
function makeVisible( id ){
var idList = ['id1','id2','id3','id4'];
for( var i = 0, l = idList.length; i<l ; i++ ){
document.getElementById(idList[i]).style.position='fixed';
document.getElementById(idList[i]).style.visibility='hidden';
}
document.getElementById(id).style.position='relative';
document.getElementById(id).style.visibility='visible';
}
函数makeVisible(id){
var idList=['id1','id2','id3','id4'];
对于(var i=0,l=idList.length;我所有的50个元素都是哪种类型的?或者你能给它们指定类名吗?所有的50个元素都是哪种类型的?或者你能给它们指定类名吗?你为我节省了几千行编码我的朋友!你为我节省了几千行编码我的朋友!