Bookmarklet




Um bookmarklet é um pequeno programa em JavaScript que é armazenado como uma URL nos Favoritos dos mais populares navegadores ou como hiperligações em páginas da internet. Devido ao Internet Explorer usar o termo favoritos ao invés de marcadores, bookmarklets também são chamados de favlets ou favelets (o termo foi inventado por Tantek Çelik em 6 de setembro de 2001 (email pessoal)).


Bookmarklets podem ser salvos e utilizados como se fossem marcadores comuns. Assim, são simples ferramentas de "um clique" que podem adicionar muitas funções para o navegador. Eles podem, por exemplo:



  • Modificar a forma que um página é mostrada (mudando a fonte, o fundo, etc...).

  • Extrair informações da página, como hyperlinks, imagens, texto, e etc...

  • Ir diretamente para um mecanismo de busca e procurar por uma palavra que foi selecionada ou solicitada por uma caixa de diálogo.

  • Submeter uma página para um serviço de validação.


Steve Kangas, da www.bookmarklets.com, criou o termo "bookmarklet", baseado na ideia sugerida no Guia do JavaScript da Netscape.


Brendan Eich, que desenvolveu o JavaScript na Netscape, deu a sua contribuição com a invenção do protocolo javascript:, que tornou possível os bookmarklets:



Eles são uma característica proposital, de forma que eu inventei a URL javascript: junto com o JavaScript em 1995 e queria que as URLs javascript: pudessem ser usadas como qualquer outro tipo de URL, inclusive ser um marcador.


Particularmente, eu fiz possível ser gerado um novo documento ao carregar, por exemplo, javascript:'alo, mundo', mas também (a chave para os bookmarklets) carregar um programa qualquer usando o DOM do documento atual, por exemplo, javascript:alert(document.links[0].href). A diferença é que o último tipo de URL usa uma expressão que avalia um tipo indefinido em JS. Eu adicionei o operador void no JS antes do Netscape 2 para facilitar o descarte de qualquer valor definido em uma URL javascript:.



Um exemplo é esse bookmarklet que irá pesquisar na Wikipédia pela palavra que está selecionada no momento no navegador:


javascript:Qr=document.getSelection(); if(!Qr){void(Qr=prompt('Keywords...',''))}; if(Qr)location.href='http://pt.wikipedia.org/w/wiki.phtml?search='+escape(Qr)

Se nada estiver selecionado, será mostrado um diálogo solicitando uma palavra.


Bookmarklet para mudar a margem direita para 45% e fazer a Wikipedia mais legível:


javascript:(function(){var newSS, styles='body { margin-left:0%; margin-right:45%;}';if(document.createStyleSheet) {document.createStyleSheet(%22javascript:'%22+styles+%22'%22); } else { newSS=document.createElement('link'); newSS.rel='stylesheet'; newSS.href='data:text/css,'+escape(styles); document.getElementsByTagName(%22head%22)[0].appendChild(newSS); } })();


Ver também |


Greasemonkey tem a mesma funcionalidade dos bookmarklets com um adicional: os "bookmarklets" podem ser automaticamente carregados quando uma certa página é visitada. A página DiveIntoGreaseMonkey.org de Mark Pilgrim é um livro livre sobre o GreaseMonkey.



Ligações externas |




  • Bookmarkletbrasil.blogspot.com: Site brasileiro com explicações e exemplos sobre bookmarkelts e favlets.


  • Bookmarklets.com: A página oficial dos bookmarklets.


  • Tantek Çelik's Favelets (ou Favlets.com): Bookmarklets (ou favlets) de categorias variadas. Para o IE para Mac.


  • Jesse's Bookmarklets Site: do Jesse Ruderman. Contém vários bookmarklets de diferentes categorias.


  • Philburns Bookmarklets: Contém bookmarklets em categorias como Navegação, Busca, Validação e etc...


  • Svenska "bookmarklets": Alguns bookmarklets em Sueco.


  • Samrod's Functional Bookmarks: Bookmarklets para todos os tipos de mecanismos de busca, serviços online e algumas ferramentas de desenvolvimento de páginas.









Popular posts from this blog

404 Error Contact Form 7 ajax form submitting

How to know if a Active Directory user can login interactively

Refactoring coordinates for Minecraft Pi buildings written in Python