Similar Posts
Quick Tip: An Introduction to Sammy.js
You’ve been seeing it for a while now with Google’s Reader, Gmail, and most recently, on Facebook. Probably, you, too, would like to write RESTful evented JavaScript applications. Well, fellow developers, meet Sammy.js, a tiny JavaScript framework built on top of jQuery. Sammy utilizes the URL hash (#) to allow you to create single page AJAX applic …
Drag & Drop de ficheros en Firefox
Esto puede dar mucho juego, pero tan solo funciona en Firefox 3.6+, por lo que no podemos depender de este script en nuestras aplicaciones. A partir de la versión 3.6, Firefox permite realizar drag&drop de ficheros en nuestra web y mediante Javascript poder obtener los ficheros o textos que se arrastren contra un elemento específico.
Su uso es muy sencillo:
dropzone.addEventListener("drop", function(event) {
event.preventDefault();
// Ready to do something with the dropped object
var allTheFiles = event.dataTransfer.files;
alert("You've just dropped " + allTheFiles.length + " files");
}, true);
Y dispone de una API tanto para el drag&drop como para los ficheros.
Recomiendo ver el código fuente de este ejemplo para tener una librería que te hace todo el trabajo.
Scrolling usando thumbnail
En esta entrada vamos a explicar cómo desarrollar un scrolling de texto usando para ello una miniatura del texto que se va a mostrar. Dispondremos de una capa con el texto y otra capa con la minuatura del texto, la cual remarca que parte del texto se está enseñando.
Este efecto ha sido testeado en IE6 y en Firefox 1.5 bajo Windows XP, en Opera es posible que no funcione debido a un bug que lleva arrastrando bastante tiempo.
Javascript Lint: ayuda para un código limpio
Javascript Lint es una aplicación (también online) que nos permite comprobar que nuestro código no tenga los errores más comunes en Javascript, asà como el uso de técnicas cuestionables.
Basada en el motor de Javascript de Firefox, nos muestra los siguientes errores:
- Falta de punto y coma al final de la lÃnea.
- Llaves sin un if, for, while.
- Código que nunca se ejecuta debido a un return, throw, continue o break.
- Sentencias case dentro de un switch que no tienen break.
- Números decimales que empiezan o acaban directamente con el punto.
- Un número que empiza por cero que lo convierte en octal.
- Sentencias que no hacen nada.
- Expresiones regulares que no están precedidos por un paréntesis, asignacion, coma o dos puntos.
- Sentencias separadas por comas en vez de por punto y comas.
- Sentencias if, for, while, … sin llaves.
- Detectar variables no usadas.
Laboratorio: directorio con búsquedas
Los directorios suelen ser muy útiles para tener organizada la información, pero también puede ser un poco complicado encontrar lo que buscamos si es que existen muchas entradas en el directorio. Por eso, en esta entrada, vamos a explicar cómo añadirle un buscador para que solo nos muestre las entradas que coinciden con un texto (para ser más precisos, con una expresión regular).
Esta vez quiero hacerlo usando JSON, normalmente lo hago usando Javascript sencillo porque como no sé si la gente que mira nuestras entradas es entendido o viene buscando a través de Google, pues cuanto más sencillo de entender, mejor, y si luego la persona quiere hacerlo mediante JSON, pues que sepa cómo se hace normalmente. Lo importante es entenderlo, luego si se quiere que se haga un copiar/pegar.
Menú radial mediante XHTML
Buen tutorial que nos explica cómo realizar un menú radial, es decir, un menú en el que las opciones se sitúan alrededor de un punto.
El tutorial nos indica cómo crear la estructura XHTML, los estilos, y el código Javascript para que funcione el menú.
Siendo algo puristas, no me gusta el uso del XHTML y el de los estilos, incluso podría sobrar Javascript. El código XHTML no es semántico. Aúnque claro, quizás lo haya hecho porque la solución que os paso ahora no sirve para IE6.
El HTML sería el siguiente:
<ul>
<li><a href="1.html">1</a></li>
<li><a href="2.html">2</a></li>
<li><a href="3.html">3</a></li>
<li><a href="4.html">4</a></li>
</ul>
Y los estilos:
ul {
width: 150px;
height: 150px;
display: block;
padding: 0px;
margin: 0px;
}
li {
width: 48px;
height: 48px;
display: block;
border: 1px solid #008585;
background: #24B8B8;
margin: 0px;
padding: 0px;
float: left;
text-align: center;
}
li + li + li {
margin-left: 50px;
}
li:first-child {
margin: 0px 50px;
}
a {
font-size: 250%;
font-family: Arial;
text-decoration: none;
color: #DEDED2;
}