Diferencia entre revisiones de «JavaScript»
(→Ver también) |
(→Ver también) |
||
Línea 52: | Línea 52: | ||
* [[Integrando JasmineJS con Ant]] | * [[Integrando JasmineJS con Ant]] | ||
* [[UnderscoreJs]] | * [[UnderscoreJs]] | ||
+ | * [[Minificado Javascript con YUI Compressor]] |
Revisión actual del 13:00 6 ago 2013
JavaScript es un lenguaje de programación interpretado, es decir, que no requiere compilación, utilizado principalmente en páginas web, con una sintaxis semejante a la del lenguaje Java y el lenguaje C.
Al igual que Java, JavaScript es un lenguaje orientado a objetos propiamente dicho, ya que dispone de Herencia, si bien esta se realiza siguiendo el paradigma de programación basada en prototipos, ya que las nuevas clases se generan clonando las clases base (prototipos) y extendiendo su funcionalidad.
Todos los navegadores modernos interpretan el código JavaScript integrado dentro de las páginas web. Para interactuar con una página web se provee al lenguaje JavaScript de una implementación del DOM.
Contenido
Frameworks
JavaScript cuenta con infinidad de frameworks y librerias que otorgan diversa funcionalidad. Entre los más conocidos:
- JQuery, un framework de aplicación base, sumamente extensible.
- Prototype, un framework de aplicación base que permite definir clases, muy usado.
- Rico, un framework de componentes de presentación [AJAX].
- Concurrent Thread Javascript, librería para manejo de hilos.
Problemas con IE
Json is undefined
La version de IE7 e IE8 no tiene importado de forma nativa las librerias de Json, por lo tanto hay que importarlas.
< !--[if lt IE 8]> <script type="text/javascript" src="/js/json2.js"></script> <![endif]-->
Bajar la libreria de json desde [aca].
Change event listener
El comportamiento del listener del evento "change" cuando se lo bindeamos a un radio button es el siguiente:
- en IE 7 el evento se dispara cuando el focus abandona el radio button.
- en Firefox (3.x), Safari (3.x) y opera (96) el evento se dispara al momento de que el radio button es seleccionado, sin esperar a que el focus abandone el radio.
Un workaround para que IE se comporte igual que el resto de los navegadores es el siguiente:
if ($.browser.msie) { $('input[name=radioXXX]').bind('click', function(){ this.blur(); this.focus(); }); } $('input[name=radioXXX]').bind('change', function(){ ........; });