2010-12-18 16 views
52

¿Qué es Javascript discreto en términos sencillos? Un ejemplo sería bueno para ayudar a mi comprensión.¿Qué es Javascript discreto en términos sencillos?

+8

Wikipedia tiene buen artículo: http://en.wikipedia.org/wiki/Unobtrusive_JavaScript –

+0

@Madhur: 1 su comentario es digno de ser una respuesta – darioo

Respuesta

74

Pedido artículo de Wikipedia:

"JavaScript no obstructivo" es una enfoque general para el uso de JavaScript en páginas web. Aunque el término no es define formalmente, sus principios básicos generalmente se entiende que incluyen:

  • separación de la funcionalidad (la "capa de comportamiento") a partir de una página Web estructura/contenido y la presentación
  • mejores prácticas para evitar los problemas de la tradicional programación JavaScript (como el navegador inconsistencias y falta de escalabilidad )
  • mejora progresiva para soportar aplicaciones de usuario que puede no soporte avanzado Javascri pt funcionalidad [2]

Así que básicamente se separa comportamiento o Javascript a partir de la presentación o html.

Ejemplo:

<input type="button" id="btn" onclick="alert('Test')" /> 

Eso no es Javascript discreto porque el comportamiento y la presentación se mezclan. El onclick no debería estar allí en html y debería ser parte de javascript en sí mismo no html.

Con ejemplo anterior, se puede ir unobstrusive así:

<input type="button" id="btn" /> 

JavaScript:

var el = document.getElementById('btn'); 
el.onclick = function(){ 
    alert('Test'); 
}; 

Ese tiempo nos hemos separado de JavaScript HTML con un ejemplo muy básico.

Nota:

No hay más que Javascript discreto como se puede comprobar a cabo en el artículo de Wikipedia.

+1

Gracias por un gran ejemplo, pero ¿por qué es malo tener onclick = "alert ('Test') en el html? – Imran

+6

@Imran: por una serie de razones, si lo piensas bien. Para una fácil portabilidad, fácil para que los demás descubran cosas, extensibilidad, etc. – Sarfraz

Cuestiones relacionadas