Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/11/2007, 01:06
Avatar de caricatos
caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Re: Optimización de función.

Hola:

Tal vez pueda ponerse en 2 líneas:

document.getElementById('nuevapromo').style.visibi lity=(document.getElementById('checkpromo').checke d)?"visible":"hidden";
document.getElementById('promoexist').style.visibi lity=(document.getElementById('checkpromo').checke d)?"hidden":"visible";

Aunque las líneas pueden ser más pequeñas con un alias:
function tag(id) {return document.getElementById(id);}

Ahora sería:

tag('nuevapromo').style.visibility=(tag('checkprom o').checked)?"visible":"hidden";
tag('promoexist').style.visibility=(tag('checkprom o').checked)?"hidden":"visible";

También se podría usar una variable con el resultado del "chequeo)
var ok = tag('checkpromo').checked;

Ahora las 2 líneas serían:

tag('nuevapromo').style.visibility=(ok)?"visible": "hidden";
tag('promoexist').style.visibility=(ok)?"hidden":" visible";

También podría hacerse una asignación directa si tenemos un array de visibilidades:
var v = new Array(); v[false] = "hidden"; v[true] = "visible";

Con esto quedaría:

tag('nuevapromo').style.visibility=v[ok];
tag('promoexist').style.visibility=v[!ok];

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo