Internacionalización mediante atributos en Javascript

¡Maldita sea, Billy! ¡nuestro sitio web tiene que estar en varios idiomas! ¡Hazlo!.

Eso lo oiréis muchas veces en vuestra vida si sois parte de un servicio web y, seguramente en vuestros proyectos, hayáis buscado librerías o formas de hacerlo ya que no queréis repetir o tener todas las paginas varias veces (es decir, el sitio entero) en cada uno de los idiomas, con todo lo que supone eso.

Por eso tiene que existir una solución más sencilla, Jhonny, tiene que existir.

Leer más

Introducción a los Service Workers

Service Worker, el santo grial de PWA o aplicaciones web progresivas. Pero, ¿qué es un PWA?.

Google dice algo poco específico, son “experiencias”, otros llaman “aplicaciones web progresivas”, otros “como aplicaciones nativas”, pero para todos ustedes la explicación más fácil es que una PWA es una aplicación web con, al menos, un trabajador de servicios con caché.

Hace tiempo, habrás visto tipos de web (por ejemplo, un chat) que se comunican con un servidor y devuelven (y envían) texto a un grupo de personas. O bien, antes de frameworks como AngularJS (o angular, o el framework típico o biblioteca), o incluso la ejecución en segundo plano del código dentro de su navegador.

Leer más

Controla los gestos táctiles con Javascript vanilla (a pelo)

Este es un artículo rápido y pequeño que te ayudará a saber, al menos, los gestos hechos con los dedos en tu sitio web, así que no espereis demasiado.

Lo primero a tener en cuenta es que la incorporación de los eventos de toque en Javascript (a pelo, vanilla) se esta incorporando como estandar en los navegadores actuales. Así que tenedlo en cuenta en vuestros proyectos.

Leer más

Creando unas tabs funcionales sin JQuery, a lo vanilla

Este post es un ejercicio muy sencillo que os puede ayudar a crear un sistema estándar de tabs sin tener que usar JQuery. Porque, como sabréis, JQuery es una buena librería pero como librería que es tiene un gravísimo problema (como ella y todas) y es que es una caja cerrada.

Una caja cerrada no os permite “ver” lo que pasa dentro (si, podéis ver el código fuente de JQuery) y que, por lo tanto, puede hacer tantas cosas indirectamente que puede suponer una alta carga para los equipos. Ademas, aunque no os lo creáis, debido a que JQuery se ha convertido en un must en muchas webs muchas de sus peculiaridades se han incorporado directamente en Javascript.

Leer más

Usa la API de Google para hacerte un lector de RSS

No solo de JQuery vive el programador de Javascript. Google tiene una preciosa y extraña API que sirve como catalizador y centralizador de otras APIs de Google a modo de que no tengas que “preocuparte” en tener que meter muchas lineas o incluso en las versiones de las mismas.

Esta API nos puede servir, rapidamente, para desarrollar a traves del cliente, desde la lectura de un WebService hasta, por ejemplo, hacer un lector de feeds sencillo.

Leer más

Captura y revisa a que elemento haces click con javascript

Aunque JQuery es el nuevo estandar, compatible y que vale para todo siempre es bueno volver al viejo javascript para hacer las cosas.

Uno de los problemas principales es saber a que elemento DOM ha hecho el usuario click encima y, por ejemplo, ver el contenido de este para luego realizar lo que necesitemos. Es decir, he aqui un script que permite devolver sobre que elemento estamos haciendo click.

// Creamos un array vacio
var ElementosClick = new Array();
// Capturamos el click y lo pasamos a una funcion
document.onclick = captura_click;
	
function captura_click(e) {
	// Funcion para capturar el click del raton
	var HaHechoClick;
	if (e == null) {
		// Si hac click un elemento, lo leemos
		HaHechoClick = event.srcElement;
	} else {
		// Si ha hecho click sobre un destino, lo leemos
		HaHechoClick = e.target;
	}
	// Añadimos el elemento al array de elementos
	ElementosClick.push(HaHechoClick);
	// Una prueba con salida en consola
	console.log("Contenido sobre lo que ha hecho click: "+clickedElement.innerHTML);	
}

Como vemos, escribimos por consola de javascript el contenido de donde hemos pulsado.