27 de Mayo del 2008
Google hostea las librerÃas de Javascript open source más populares y permite a los desarrolladores cargarlas desde sus servidores. AsÃ, se ofrece evitar el hosteo de estos frameworks, con las ventajas que esto implica (actualizaciones, velocidad, bandwidth).
El AJAX libraries API de Google permite cargar jQuery, Prototype, Script.aculo.us, MooTools, Dojo en sus diferentes versiones estables, permitiendo al desarrollador elegir la versión que desea. Estas librerÃas se mantendrán siempre actualizadas, corrigiendo posibles bugs sin que el usuario tenga que preocuparse por esto.
Una vez que sale un nuevo release estable, Google lo instala y se compromete a hostearlo indefinidamente. Su arquitectura de servidores permitirá recibir pedidos de miles de usuarios sin ningún problema.
17 de Mayo del 2008
Google lanzó un nuevo producto realmente interesante: Google Doctype. Definido según su creador, Doctype es “una enciclopedia para desarolladores web para desarolladores web”.
Armado en forma de Wiki, éste proyecto pretende documentar todos los estándares web de lenguajes abiertos (como Javascript, CSS, HTML, etc.). Puede ser editado y comentado por cualquiera que posea una cuenta en Google (o Gmail).
También tiene una versión en español, aunque no tan completa de cada tema.
http://code.google.com/doctype/
17 de Mayo del 2008
Muchas veces no alcanza con poner al atributo designMode en “on” para hacer que un textarea sea editable por el usuario y asà poder dar estilos al texto ingresado. El problema es que cuando ese textarea esta completamente vacio, es decir: innerHTML = ”, al hacer click sobre el mismo no aparece el cursor y no es posible escribir en el mismo.
Para evitar esto, hay que hacer que el textarea contenga algo. Si se desea que sea “invisible”, alcanzará con colocar un break: innerHTML = ‘<br>’
31 de Agosto del 2007
Haciendo un debug a un script Javascript con el método split(), note que no se comporta de la misma forma en Firefox que en IE.
Al parecer, si ejecuta este código:
texto = “lorem ipsum dolor sit amet,”;
arregloNuevo = texto.split(”,”);
IE devolverá: arregloNuevo = ["lorem ipsum dolor sit amet"]
Firefox, en cambio: arregloNuevo = ["lorem ipsum dolor sit amet", ""]
O sea que, al parecer, IE omite la última cadena si esta está vacia.
6 de Agosto del 2007
Muchas veces, al programar en actionscript o javascript, se necesita utilizar metodos que no estan declarados en los objetos que estan integrados en el lenguaje. Por ejemplo:
- un método trim para los strings en javascript que permita eliminar los espacios en blanco al final de una linea;
- un método tint para un color en flash que permita asignar tinte a los movie clips mediante actionscript.
Para esto se usa la propiedad prototype (Prototype tambien es un framework para javascript - AJAX). Esta propiedad permite crear métodos nuevos a objetos, ya sea declarados por el programador o integrados en el lenguaje.
Su uso es bastante simple:
String.prototype.trim = function(){
val = this;
while (val.substr(val.length - 6) == ” “){
val = val.substr(0,val.length-6);
}
return val;
}
Ahi se está creando en javascript un método trim para los Stings. Para utilizarlo sólo hay que usarlo como cualquier otro método: mi_cadena.trim();
en Flash:
Color.prototype.setTint = function(r, g, b, amount) {
var percent = 100-amount;
var trans = new Object();
trans.ra = trans.ga=trans.ba=percent;
var ratio = amount/100;
trans.rb = r*ratio;
trans.gb = g*ratio;
trans.bb = b*ratio;
this.setTransform(trans);
};
AsÃ, se puede crear un objeto color, asociado a un movie clip, para luego poder darle el tinte correspondiente:
nuevoColor = new Color (mi_MC);
nuevoColor.setTint(159,202,1,34);
25 de Junio del 2007
Otro error que da Internet Explorer y no asà Firefox:
document.getElementById(’opciones’).style.height = 70px;
Al leer esa lÃnea, Internet Explorer hace un break y muestra que hay un error, preguntando si se lo quiere depurar.
La solución: cambiar .height por .Height (?). Increiblemente funciona. Pero lo más extraño es que ese error y ese cambio lo tuve que hacer sólo en esa lÃnea, habiendo, antes y después, lÃneas similares con el mismo .style.height