Contenido

Lanzamiento de jQuery 1.3

14 Ene

+ 10

Hoy, 14 de enero de 2009, jQuery 1.3 ve la luz y nos sorprende con muchas mejoras que harán de este framework una herramienta todavía más útil.

Sizzle

3196296260_c7a0be70be

Para empezar, la incorporación de Sizzle hace que la velocidad en búsqueda de selectores se vea incrementada y ofrezca unos resultados muy interesantes.

Delegación de eventos

Con la delegación de eventos el generar elementos dinámicamente no implicará tener que definir nuevamente los eventos asociados al tipo de elemento generado.

$("p").live("click", function(){
$(this).after("<p>Another paragraph!</p>");
});

jQuery.Event

Se ha creado un elemento Event para gestionar más fácilmente los eventos y así encapsularlos para obtener todas las funcionalidades especificadas por la W3C en todos los navegadores.

Inyección HTML reescrita

3196296910_6d385bd9df

Los métodos jQuery.html(), .append(),.. encargados de generar HTML dinámicamente han sido reescritos obteniendo una mejora de un 6x en algunos casos sobre jQuery 1.2.6.

Mejorado el método .offset()

La reimplementado el método offset() para mejorar su velocidad y se ha conseguido mejorar hasta 3x la velocidad con respecto a la 1.2.6.

Eliminación del Browser Sniffing

En esta versión llama mucho la atención de que no se compruebe mediante el browser/useragent el navegador del usuario lo que ha hecho que la velocidad en general del framework tambien se vea afectada. Para evitar problemas con los scripts que usar jQuery.browser, aún está cargado en el core y será eliminado el futuras revisiones.

Descargar

jQuery Minified / jQuery Regular

Usar con Google Ajax Libraries

Los que usamos Google Ajax Libraries para no tener que alojar jQuery en nuestros servidores podemos usarlo mediante esta URL:

http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js
  • Me alegra que normalicen el objeto Event, facilitara los scripts mongallon.

  • No entiendo por que se va eliminar jQuery.browser ?!

  • @kassu: En esta versión, no se elimina. Lo dejan para que los desarrolladores lo vayan eliminando.

    El motivo es por que en el core ya no comprueban que navegador tiene el usuario, sino que comprueban que los método existan o no, de esta forma se condiciona la ejecución.

    Saludos

  • ¿No es compatible con FancyBox? Estoy probandolo y parece que da algunos problemas.

  • ¿Es compatible con FancyBox? yo también lo uso.

  • Hola Andrés:
    Aprovecho este comentario para preguntarte acerca de una cuestión relacionada con jQuery.
    El problema: he instalado una theme de wordpress cuyos requisitos de memoria son excesivos. De hecho, he tenido que añadir al htaccess la línea «php_value memory_limit 60M» para que no diera problemas. El fallo principal era que en el Panel de Control del wordpress no se visualizaban correctamente los comentarios ya que solo mostraba el primero de cada página y no con todos los datos. Con otros themes sin problemas.
    El theme tiene un archivo jQuery versión 1.2.6.

    Pruebas: las he realizado en local con WampServer. Aquí no daba el error pero le costaba mucho mostrar los comentarios en el Panel de Control. Con otros themes, la carga de aquéllos es inmediata.
    Instalación limpia de wordpress 2.7 (ingles) tanto en local como en el servidor.
    He revisado el código del theme y no he encontrado ningún error. De hecho, funcionó muy bien después de subir la memoria.
    La verdad es que no tengo ni idea de por qué necesita tanta memoria y he pensado que el jQuery podría tener algo que ver. En cualquier caso, debe ser algo que carga cuando se activa el theme porque he probado a desactivar los archivos js del theme y eso no soluciona nada.
    ¿Alguna idea?
    Un saludo.

  • Acerca de lo que te preguntaba en el comentario anterior: no hace falta que mires nada.
    El responsable de la carga de memoria que necesita el theme son unas líneas de código que hay en functions.php.
    Te pongo la función:
    function comment_count( $commentcount ) {
    global $id;
    $_commnets = get_comments(‘post_id=’ . $id);
    $comments_by_type = &separate_comments($_commnets);
    return count($comments_by_type[‘comment’]);

    Como resulta que tengo algo más de 8.000 comentarios…. imagina.
    Un saludo.

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.