Atareq Texto pequeñoTexto medianoTexto grande
5 anteriores >>
Ocultar
En un blog, el pasado suele estar abajo a la derecha, y el futuro, arriba a la izquierda. Por lo general, no queda sitio para el presente.

NOTA: Es curioso lo que ha pasado con este post que habla del Tiempo. Sin razón aparente o conocida, su registro horario se ha visto afectado y ahora aparece en primer lugar. No seré yo el que vaya en contra de este capricho de la tecnología o del azar, de manera que permanecerá en este lugar como estandarte de una de mis mayores obsesiones.
Atareq, pa//logs (en Pensamientos de más allá de medianoche)
Corregido por Atareq. Última revisión a las 19:40 del 12/MAY/2009
Comentarios
Imprime el artículoEnvíaselo a un amigoEnvíalo a del.icio.usMenéalo en MenéameEnvíalo a FURLEnvíalo a DiggEnvíalo a Reddit
Ocultar

Hace tiempo sufrí la extraña manera de JavaScript para gestionar el contexto de los objetos, concretamente de la palabra reservadathis. Veamos un ejemplo de código JQuery:



$.each(this.fields, function(i, field) {

if (field.required && this.isNull(field)) {

this.put(field, "El campo + $(field.labelId).text() + es obligatorio");
ret = false;
} else if(field.email && !this.validateEmail(field)) {

this.put(field, "El campo + $(field.labelId).text() + no es una dirección válida");
ret = false;
}
});

Esta función forma parte de una clase, así que pensamos que se puede hacer uso de this para referenciar miembros de la misma. Sin embargo, la llamada this.validateEmailprovocará un error indicando que validateEmail no es una función. La explicación es que esa llamada sucede dentro del ámbito de una función nueva, $.each(this.fields, function(i, field)..., por lo que el contexto de this se pierde. En Prototype, al menos, se resolvía con un binding, que consiste en agregar .bind(this) al final de la función, de esta forma:


$.each(this.fields, function(i, field) {

if (field.required && this.isNull(field)) {

this.put(field, "El campo + $(field.labelId).text() + es obligatorio");
ret = false;
} else if(field.email && !this.validateEmail(field)) {

this.put(field, "El campo + $(field.labelId).text() + no es una dirección válida");
ret = false;
}
}.bind(this));

Pero esto no funciona en JQuery, así que tras algunas búsquedas infructuosas, he tenido que improvisar y he hallado un método que funciona. Consiste en asignar this a una variable, que uso en lugar de la palabra reservada:


var self = this;
$.each(self.fields, function(i, field) {

if (field.required && self.isNull(field)) {

self.put(field, "El campo + $(field.labelId).text() + es obligatorio");
ret = false;
} else if(field.email && !self.validateEmail(field)) {

self.put(field, "El campo + $(field.labelId).text() + no es una dirección válida");
ret = false;
}
});

De esta forma, podemos seguir usando los atributos y métodos de nuestra clase sin temor a perder el contexto.

P.S.: Sé que podría usar el plugin validation de JQuery, pero no he visto que funcione a no ser que el formulario se envíe. En mi caso, ni siquiera estoy usando formularios. De todas formas, acepto sugerencias.
Atareq, 06/FEB/2010 (en Nuevas tecnologías)
Corregido por Atareq. Última revisión a las 19:34 del 06/FEB/2010
Comentarios
Imprime el artículoEnvíaselo a un amigoEnvíalo a del.icio.usMenéalo en MenéameEnvíalo a FURLEnvíalo a DiggEnvíalo a Reddit
Ocultar
La Tierra es la cuna de la
humanidad, pero no podemos vivir para siempre en una cuna.

Atareq, 04/FEB/2010 (en Pensamiento)
Comentarios
Imprime el artículoEnvíaselo a un amigoEnvíalo a del.icio.usMenéalo en MenéameEnvíalo a FURLEnvíalo a DiggEnvíalo a Reddit
Ocultar
Me ha llamado la atención la fotografía que publica hoy la NASA en su canal APOD (Astronomy Picture Of the Day). Por su interés, he realizado una traducción libre del texto, que expongo a continuación:


Este antiguo manuscrito no tiene título ni autor conocidos, y está escrito en una lengua ignota. ¿Qué significa y por qué contiene tantas ilustraciones de astronomía? El misterioso libro fue adquirido por un emperador, olvidado en una estantería de biblioteca, vendido por miles de dólares, y posteriormente donado a Yale. Posiblemente escrito en el siglo XV, el volumen de más de 200 páginas es actualmente conocido como el Manuscrito Voynich, tras ser (re-)descubierto en 1912.

La imagen de arriba es una ilustración del libro que parece estar relacionada con el Sol. El libro cataloga algunos fragmentos del cielo con constelaciones desconocidas. La incapacidad de los modernos historiadores de astronomía para comprender los orígenes de estas constelaciones se empequeñece, quizá, con la de los modernos criptógrafos intentando descifrar los textos. ¿Podrán las mentes eclécticas de los lectores de APOD lograr algún progreso? Si usted cree que puede aportar alguna idea, le rogamos que participe en el activo debate online en lugar de enviarnos un correo-e.

El libro permanece en la colección de libros raros de Yale con el número de registro "MS 408".
Atareq, 31/ENE/2010 (en Ciencia)
Comentarios
Imprime el artículoEnvíaselo a un amigoEnvíalo a del.icio.usMenéalo en MenéameEnvíalo a FURLEnvíalo a DiggEnvíalo a Reddit
Ocultar
Reproduzco, íntegro, el comunicado de Nav4All notificando la suspensión del servicio GPS debido a la ruptura del acuerdo de licencia por parte de Navteq. Es una pena porque, aunque no era un navegador 100% fiable, resolvía de manera muy decente la mayoría de las peticiones, y era gratuito.


Amsterdam, The Netherlands, 28-01-2010 16:30 GMT+1
Subject: Nav4All navigation shut down by Navteq
Letter to 27,625,631 Nav4All navigation customers


Dear Customers,


It is with the deepest regret that we hereby notify you that the global navigation of Nav4All and the Tracking & Tracing will go offline in 3 days. The reason for the same is that the data licence agreement with Navteq (a 100% Nokia subsidiary) was not extended, in a totally unexpected manner. It is not possible to implement data from another supplier in our Nav4All systems within the short term. The Nav4All navigation system was developed for Navteq data. Nav4All has therefore been constrained to stop.


We greatly regret the fact that we have to suspend the operation of our service. With your help, we have developed Nav4All into a global product with 27.5 million users in 56 languages, in 5 years. This has made Nav4All the largest navigation supplier. This large number of users also has to do with the fact that Nav4All works on hundreds of different mobile telephones of many makes such as Blackberry, Sony Ericsson, Samsung, Motorola, Android, HTC, Nokia, LG, Iphone, Ipod etc.


After 5 years of testing and market development, we witnessed rapid - in fact, exponential - growth during the last two years. That growth was reported in the licence reports to Navteq. In mid-December 2009, the global coverage was extended to include the Philippines, Morocco and Kenya.


Please contact the Nav4All support desk in case you have any questions: www.nav4all.com/support. If there is any further information from Nav4All concerning the subject of this letter, the same will be published on our website: www.nav4all.com. For reasons of privacy, Nav4All does not have the email addresses of all its customers, and we therefore request you to forward this email to the maximum extent possible, in order to ensure that everyone is informed.


Kind Regards,
Hennie J.M. Groot Koerkamp (CEO)
Nav4All BV
Keizersgracht 62-64
1015 CS Amsterdam NL


The text of this e-mail will be available on our website as soon as possible in the following languages: Dutch, French, German, Italian, Spanish, Portuguese, Chinese, Arabic, Russian, and Indonesian.
5 anteriores >>