Similar Posts
JSZip: crear ficheros ZIP mediante Javascript
Interesante librería que nos permite crear ficheros ZIP desde Javascript, con unas simples líneas de código podemos crear zips con ficheros de texto, imágenes, crear directorios…
var zip = new JSZip();
zip.add("Hello.txt", "Hello World\n");
img = zip.folder("images");
img.add("smile.gif", imgData, {base64: true});
content = zip.generate();
location.href="data:application/zip;base64,"+content;
El único problema que hay es a la hora de generar el nombre del fichero: Firefox crea un fichero con un nombre extraño y acabado en .part, Safari lo nombra “Unknown” sin extensión, Chrome “download.zip” e IE directamente ni funciona la librería.
Vía / @devongovett
DOMSlides
Supongo que S5, el sistema para realizar presentaciones basado en estándares desarrollado por Eric Meyer, es ya un viejo conocido.
He de confesar que no lo he utilizado nunca. Y seguramente jamás llegue a hacerlo: me parece que es como matar moscas a cañonazos (Si no te gusta Powerpoint, puedes realizar presentaciones con OpenOffice o hacer un bonito PDF).
Pues bien, hace unas semanas que estamos trabajando con otro sistema, basado también en XHTML, CSS y javascript, que nos permite generar la presentación a partir de un solo documento:
DOMSlides de Christian Heilmann, ligero y grácil cual felino. Y sino, compruébalo navegando por la demo.
Problemas de las librerías Javascript
Ultimamente están apareciendo muchas librerÃas Javascript que mejoran el trabajo con Javascript, pero no todo son cosas positivas y hay gente que muestra problemas que aparecen con el uso de estas librerÃas:
- Escasa documentación: ya sea online u offline, si la librerÃa es increible, pero no hay una forma sencilla de saber cómo usarla, pues nos quedamos como estábamos.
- Escaso soporte: estas librerÃas no suelen tener un sistema que ayude a los usuarios con los problemas que se encuentran.
- Demasiado grandes: cargar una librerÃa que ocupa mucho, para usar un par de funciones, es mucho lo que se carga y poco lo que se usa, quizás repercute negativamente en rendimiento o en ancho de banda.
- Demasiado especÃficas: sobre todo al trabajo de otra gente, por lo que a nosotros nos puede venir parcialmente bien.
- Diferentes en estructura: diferentes a la forma en que lo hacemos nosotros, en vez de usar estructuras estándares a las que podemos estar todos acostumbrados.
- No hay guÃas paso a paso: para poder entender las funcionalidades de las liberÃas con ejemplos.
- Escasa información sobre soporte a navegadores
- Inconsistencia en nombres de métodos y variables: en la W3C hay amplia documentación sobre la metodologÃa que se deberÃa seguir para la nomenclatura de funciones y variables.
Más información
Why good JavaScript libraries fail
Dear JavaScript Library Developers…
Too many libraries, not enough librarians
Six things that suck about the Web in 2006
VÃa / QuirksBlog
Laboratorio: control para direcciones IP
Algo que me suele gustar bastante es que cuando tengo que introducir una dirección IP en un formulario o ventana de Windows, no tenga que estar dándole al tabulador para cambiar de caja de texto. Lo mismo es aplicable cuando se trata de un serial number. Tambien suelo agradecer que hacer un copy/paste, no tenga que ir haciéndolo caja a caja.
Siempre viene bien hacernos un control para direcciones IP, que permita pegar toda la dirección ip y que se rellenen las cajas correctamente y que al pulsar el punto se mueva de caja, y la verdad es que tampoco es muy difÃcil de hacer.
Javascript: getElementsBy
Uno de los problemas con los que nos solemos encontrar cuando programamos en Javascript es el modo en el que obtenemos los elementos HTML que deseamos tratar, a parte del conocido getElementById(), existen otros, algunos estándar y otros desarrollados por otra gente.
Una interesante lista con todos ellos reunidos: getElementById (W3C, Prototype JavaScript framework), getElementsByName (W3C), getElementsByTagName (W3C), getElementsByTagNames (Peter-Paul Koch), getElementsByClassName (Prototype JavaScript framework, Stuart Colville, Robert Nyman, Jonathan Snook), getElementsBySelector (Dean Edwards, Olivier Gambier, Prototype JavaScript framework 1.0.5rc2, Simon Willison, jQuery, Joe Hewitt), getElementsByAttribute (Robert Nyman, David “liorean” Andersson, Jack Sleight) y getElementsByAnything (Matthew Pennell)
VÃa / Menéame
Evita el uso de eval en Javascript
Buen truco, o mejor dicho, implementación, para crear un objeto en Javascript en el que las funciones son referenciadas mediante un string. Puede ser muy útil cuando tenemos en un string el nombre de la función que queremos ejecutar, pero no queremos usar eval.
Para ello lo que creamos es un array de funciones, y el array, implementado como una tabla hash (los indices son strings), hace referencia a una función.
var obj = {
funciones : new Array(),
creaMetodo : function(nombre, fn) {
this.funciones[nombre] = fn;
},
ini : function() {
this.creaMetodo("prueba", function(){alert(1);});
}
}
Ahora podremos referenciar a la función ejecutando:
obj.funciones['prueba']();
VÃa / Scriptia