Foros del Web » Programando para Internet » Javascript »

Javascript discreto (no intrusivo... Unobtrusive JS)

Estas en el tema de Javascript discreto (no intrusivo... Unobtrusive JS) en el foro de Javascript en Foros del Web. Hola, estoy dandole a la lectura sobre este tema, pero hasta el momento encontré poca info en castellano. Alguien tendrá por allí algunos enlaces a ...
  #1 (permalink)  
Antiguo 18/07/2007, 12:12
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 2 meses
Puntos: 535
Javascript discreto (no intrusivo... Unobtrusive JS)

Hola, estoy dandole a la lectura sobre este tema, pero hasta el momento encontré poca info en castellano.
Alguien tendrá por allí algunos enlaces a info en nuestro idioma al respecto? Tutoriales? Ejemplos prácticos explicados para novatos?

Gracias!
  #2 (permalink)  
Antiguo 18/07/2007, 15:10
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 2 meses
Puntos: 535
Re: Javascript discreto (no intrusivo... Unobtrusive JS)

Acá hice una función para escalar imágenes:

Código:
function escalarImg(){
	var divs = document.getElementsByTagName('div');
	for(var i=0; i < divs.length; i++){
		if(/post_content/.test(divs[i].className)){
			var imas = document.getElementsByTagName('img');
			for(var i=0; i < imas.length; i++){
				ancho_max = 580;
				ancho_actual = imas[i].width;
				if(ancho_actual > ancho_max){
					imas[i].width = 580;
					imas[i].title = "Imagen escalada";
					alertar_escala = document.createElement('a');
					escala_texto = document.createTextNode('La imagen fue escalada. Click para abrirla en nueva ventana a tamaño real.');
					alertar_escala.appendChild(escala_texto);
					alertar_escala.setAttribute('href',imas[i].src);
					alertar_escala.onclick = function(){abrir_original(this); return false;};
					imas[i].parentNode.appendChild(document.createElement('br'));
					imas[i].parentNode.appendChild(alertar_escala);
				}//if
			}//for
		}//if
	}//for
}//function

function abrir_original(ima){
	window.open(ima.href);
}

window.onload = escalarImg;
La hice para aportar una idea en el tema Nuevo Diseño Foros del Web.

¿Sería un buen uso de javascript no-intrusivo?

Y me surge otra duda... ¿cómo pongo varios window.onload = bla ? Porque me toma siempre el último!
  #3 (permalink)  
Antiguo 18/07/2007, 16:43
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Re: Javascript discreto (no intrusivo... Unobtrusive JS)

Te respondo lo del window.onload. Para llamar a varias funciones, lo que podés hacer es colocarlas dentro de una función anónima:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<
title>test</title>
<
script>
function 
asustar(){
alert('booo!')
}
window.onload=function(){
alert('hola');
document.getElementsByTagName('body').item(0).appendChild(document.createTextNode('hola!'));
document.getElementsByTagName('body').item(0).appendChild(document.createElement('br'));
document.getElementsByTagName('body').item(0).appendChild(document.createTextNode('chau!'));
asustar();
}
</script>
</head>

<body>
</body>
</html> 
  #4 (permalink)  
Antiguo 18/07/2007, 17:12
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 2 meses
Puntos: 535
Re: Javascript discreto (no intrusivo... Unobtrusive JS)

Gracias Panino. Mañana hago pruebas :)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:16.