Presentador Virtual e24Presenter
Encuentra usuarios de Twitter en tu ciudad con LocaFollow

votarCómo crear un bookmarklet

Autor: aartiles | Archivado en: Buscadores, JavaScript, Navegadores el día 18/Ene/2009

Según la Wikipedia, un bookmarklet es:

un marcador que, en lugar de apuntar a una dirección URL, hace referencia a una pequeña porción de código JavaScript para ejecutar ciertas tareas automáticamente.

La sintaxis es javascript: seguido del código javascript. El código javascript no debe contener cambios de líneas y no debe ser demasiado extenso, esto un compresor de javascript nos lo puede facilitar. Para usar un bookmarklet basta con añadirlo a los favoritos como un enlace más, y en navegadores como Firefox es tan fácil como arrastrarlo a la barra de favoritos.

Con algo tan sencillo podemos resolver un sinfín de limitaciones de los buscadores y enriquecerlos con nuevas funcionalidades. El uso de los bookmarklets data del 2001, por lo que podemos encontrarnos muchos ya desarrollados como estos que no pueden faltar en mi barra:

Pero, por muchos que existan ya desarrollados, siempre hay alguna necesidad por cubrir, por eso os comparto un par de plantillas que nos permitirán hacer algunos bien sencillos.

Uno de los usos más típicos es realizar una acción con el texto seleccionado en la página, como por ejemplo buscar dicho texto en algún buscador. El mismo ejemplo que nos brinda La Wikipedia lo podemos reutilizar con solo sustituir la URL de búsqueda por la del buscador que nos interese. Así por ejemplo podemos hacer un bookmarklet que busque el texto seleccionado en un comparador de productos como Ciao.

Para ello sustituiremos http://es.wikipedia.org/w/wiki.phtml?search= por http://www.ciao.es/sr/q-

Para Firefox y Konkeror

?View Code JAVASCRIPT
1
javascript:(function(){q=document.getSelection();if(!q)q=prompt('De qué estás buscando información?:'); if(q)location.href='http://www.ciao.es/sr/q-'+escape(q);})()

Bookmarklet Ciao

Para Safari

?View Code JAVASCRIPT
1
javascript:void(q=prompt('De qué estás buscando información?:',getSelection())); if(q)void(location.href='http://www.ciao.es/sr/q-'+escape(q))

Bookmarklet Ciao

Para Internet Explorer

?View Code JAVASCRIPT
1
javascript:(function(){q=document.selection.createRange().text;if(!q)q=prompt('De qué estás buscando información?:',''); if(q)location.href=' http://www.ciao.es/sr/q-'+escape(q);})()

Bookmarklet Ciao

Otro uso más avanzado de los bookmarklets es para modificar el comportamiento de la página como lo hacen XRAY y Design. Estos por su complejidad necesitan añadir dinámicamente librerías externas de javascript a la página. Aquí os dejo una plantilla que podemos reutilizar con nuestro propio script externo:

?View Code JAVASCRIPT
1
javascript:function cargaScript(scriptURL) { var scriptEl = document.createElement('SCRIPT'); scriptEl.setAttribute('language', 'JavaScript'); scriptEl.setAttribute('src', scriptURL); document.body.appendChild(scriptEl);} cargaScript('http://camino/a/miscript.js');

Solo tenemos que sustituir http://camino/a/miscript.js por la URL real de nuestro script. Y si necesitáramos cargar más de uno entonces repetimos la llamada a la función cargaScript con la URL del otro script.

Con este bookmarklet puedes probar e24Presenter en tu página: e24Presenter

En un próximo post compartiré un grupo de bookmarklets que he desarrollado para mi día a día y que alguno podría serte útil.

Alfredo ArtilesSoy Alfredo Artiles, Co-Fundador de equipo24 y e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter @aartiles24.

Tags: , , ,
  • Digg
  • del.icio.us
  • Facebook
  • Google
  • LinkedIn
  • Meneame
  • MySpace
  • Technorati
  • TwitThis
Posts Relacionados

4 Comentarios on “Cómo crear un bookmarklet”

  1. #1 0x564242.me dijo 9:29 am el Enero 22nd, 2009:

    Aqui teneis otro para compartir directamente desde google reader a varios servicios

    http://0×564242.me/2009/01/12/fbreader-compartir-desde-google-reader/


  2. #2 Twitlet, actualiza tu estado en Twitter con un click - Bitácora de Webmaster dijo 7:30 pm el Febrero 18th, 2009:

    [...] es un bookmarklet de javascript para actualizar de forma rápida nuestro estado en [...]


  3. #3 Evite distracciones molestas de YouTube con Quietube. - Bitácora de Webmaster dijo 4:50 pm el Marzo 25th, 2009:

    [...] es un bookmarklet que crea páginas reducidas donde solo vemos el reproductor de video de YouTube,lo que evita el [...]


  4. #4 Interpretando las ubicaciones en Twitter con formato iPhone:Lat,Lon - Bitácora de Webmaster dijo 8:00 pm el Enero 30th, 2010:

    [...] algún tiempo publiqué sobre cómo desarrollar un bookmarklet, hoy he creado uno bien sencillo que permite decodificar estas coordenadas y geolocalizarlas en un [...]



Deja un comentario.