Web standards, arquitetura da informação, usabilidade, acessibilidade, tecnologia, filosofia de buteco (sic), e qualquer coisa em uma casca de noz!

Ir direto para o conteúdo

Refresh de CSS para o Mozilla Firefox

Por: Henrique Costa Pereira

Terça-feira 01 Agosto 2006 às 07:40

Categoria: HTML / CSS / JavaScript

Quando estou desenvolvendo um site novo, uma das coisas que mais acho chato é ter que dar refresh na página inteira para poder ver apenas atualizações que foram feitas na minha folha de estilos externa. Tempos atrás navegando pela Web, encontrei um script muito muito interessante que faz o que eu sempre quis fazer: ele força o re-download somente do CSS.

Isso funciona da seguinte maneira: seja em um servidor interno ou externo, quando você faz atualizações somente no CSS e aperta F5 em qualquer browser, você acaba baixando todo o XHTML e as imagens novamente. Quando está trabalhando em um servidor remoto, isso é ainda mais chato e acaba tomando alguns segundos precisosos do seu tempo. Com o JavaScript demonstrado abaixo, você cria um botão na sua bookmarks toolbar do Mozilla Firefox (sim, somente no Firefox, o Internet Explorer não possuiu este recurso), e toda vez que quiser dar um refresh somente nas folhas de estilos do site que você está desenvolvendo, basta clicar no botão, que ele deleta os arquivos de CSS do cache da sua máquina e faz o download novamente. E bem rapidinho.

Para criar este botão, faça o seguinte. Clique com o botão direito sobre a sua “bookmark toolbar” no Firefox. No menu contextual que abrir selecione “New Bookmark“. No campo “name” digite algo do tipo “CSS Refresh” e no campo “location“, cole o seguinte script:


javascript:void(function(){var  i,a,s;a=document.getElementsByTagName('link');for(i=0;i<a.length;i++){s=a[i];if(s.rel.toLowerCase().indexOf('stylesheet')>=0&&s.href)  {var  h=s.href.replace(/(&|%5C?)forceReload=\d+/,'');s.href=h+(h.indexOf('?')>=0?'&':'?')+'forceReload='+(new  Date().valueOf())}}})();

Agora, sempre que estiver no Firefox fazendo alterações de CSS, basta clicar neste botão pra atualizar somente sua folha de estilos. Infelizmente, eu perdi o artigo onde originalmente eu encontrei este código. Se alguém souber, por favor me informe para que eu possa dar os devidos créditos ao autor do script.

Artigos relacionados:

Este texto não pode ser copiado ou reproduzido em nenhum outro site na íntegra sem autorização do autor!. Mais detalhes sobre licença de uso aqui!



Existem 39 comentários para “Refresh de CSS para o Mozilla Firefox”

# 1° Tiago Bega Terça-feira 01 Agosto 2006 às 07:54GMT

Maravilha, fiz aqui e funcionou perfeitamente ontem mesmo estava imaginando alguma maneira de fazer isto.
Muito bao a indicação

# 2° Maicon Junches Terça-feira 01 Agosto 2006 às 08:17GMT

Isso é ÓTIMO!

Abraços!!

# 3° Edgar Terça-feira 01 Agosto 2006 às 08:37GMT

Realmente muito interessante.

# 4° Marcos V Bohrer Terça-feira 01 Agosto 2006 às 08:49GMT

Perfeito!

# 5° Thalis Valle Terça-feira 01 Agosto 2006 às 09:31GMT

Parabéns! Muito útil.

# 6° Raphael Terça-feira 01 Agosto 2006 às 10:17GMT

Aqui tbm funcionou =)

Valew !!!

# 7° Dedexter Terça-feira 01 Agosto 2006 às 10:56GMT

Realização de um sonho! ^^’

# 8° Lucas Alves Terça-feira 01 Agosto 2006 às 11:21GMT

Caramba muito bom….muito útil.
valeu por compartilhar!

# 9° Carlos Eduardo Terça-feira 01 Agosto 2006 às 12:01GMT

Muito boa!

Era isso que eu estava precisando… heheh =)

# 10° Arnaldo Terça-feira 01 Agosto 2006 às 13:35GMT

Nao gostei!
Qual é o grande problema e a grande preguiça de dar F5 na página inteira?

# 11° Rael B. Riolino Terça-feira 01 Agosto 2006 às 14:16GMT

Legal… Eu costumo fazer tudo no meu comp antes de publicar… mas isso com certeza é util! ;-D

valeu

# 12° O'Marin Terça-feira 01 Agosto 2006 às 14:22GMT

Boa dica XD

Arnaldo, o Henrique descreveu no texto o problema de ter que dar um refresh (F5) só para visualizar uma alteração no CSS.

# 13° Ricardo Terça-feira 01 Agosto 2006 às 17:45GMT

Muito bom isso ai… Segundo meus testes funciona no Ópera tbem … valeu !!!

# 14° Tulio Faria Terça-feira 01 Agosto 2006 às 18:35GMT

muito útil, valeu

# 15° Marcus Danillo Terça-feira 01 Agosto 2006 às 20:26GMT

Funciona no Opera também. Excelente.

# 16° Thomaz Leite Quarta-feira 02 Agosto 2006 às 03:22GMT

Dica muito boa para quem edita sites remotamente. Outra opção é usar a extensão editCSS, que abre uma barra lateral com o código CSS. Qualquer alteração nesse código aparece instantaneamente no site.

# 17° Rodrigo Soriano Quarta-feira 02 Agosto 2006 às 07:53GMT

Fantástico.

# 18° Ricardo Barato Quarta-feira 02 Agosto 2006 às 08:32GMT

Não funciona com endereços locais!

Somente remoto =/

# 19° Ricardo Barato Quarta-feira 02 Agosto 2006 às 08:36GMT

Opa, corrigindo, ele só recarrega quando a folha de estilo é carregada por

No meu caso que uso pois pusso N folhas de estilo ele já não funciona!

# 20° Marcus de Oliveira Silva Quarta-feira 02 Agosto 2006 às 08:57GMT

Caramba! Muito legal mesmo…muito útil!
O que algumas linhas de codigo bem bolado
nao fazem né!

Abraços

# 21° renato cruz Quarta-feira 02 Agosto 2006 às 16:07GMT

Fiz no Firefox e no Internet Explorer normalmente… Pq não funcionaria no IE, Henrique?

# 22° Arnaldo Quarta-feira 02 Agosto 2006 às 16:22GMT

Ainda acho inútil…

Me desculpe…
Questão de opinião…

Merecia uma coluninha na seção DICAS, nao um artigo de destaque.

# 23° Bruno Chaves Quarta-feira 02 Agosto 2006 às 21:53GMT

muito bom, porem o costume de apertar f5 ainda supera eu clicar no botao rsrs :)
mas muito fera mesmo
principalmente para sites remotos

# 24° Bruno Dulcetti Quinta-feira 03 Agosto 2006 às 12:03GMT

Interessante Henrique… Sempre apertava F5, mas agora vou usá-lo… perfeito… ;)

Jah tinha pensado em algo assim, mas naum manjo js para criar tal script…

Akele abraço…

# 25° RodrigoWD Sexta-feira 04 Agosto 2006 às 13:04GMT

Ctrl + F5 da refresh limpando o cache da pagina atual.

# 26° Caio Alves Sexta-feira 04 Agosto 2006 às 16:40GMT

Muito bom esse código, vai poupar bastante o meu tempo na hora do desenvolvimento.
Quando ao link dos artigos, eu dei uma procurada e achei esses dois links:

http://mastodon.dojotoolkit.org/~david/recss.html
(Essa parece ser a página que mantém o script original, desenvolvido por David Schontzler)

http://pinds.com/articles/2006/02/13/re-recss
(Nesse artigo, o autor disponibilizou um update para funcionar no Safari – já atualizado no link acima)

# 27° Thiago Paes Sexta-feira 04 Agosto 2006 às 17:58GMT

meudues, show de bola.. chega de ctrl+f5 haahaha

# 28° Leandro Vieira Pinho Domingo 06 Agosto 2006 às 09:06GMT

Muito bacana este recurso, gostei.

Seria interessante também um script que funcionasse quando fosse utilizado o style e não o link.

Conhece algum?

# 29° Tiago Celestino Domingo 06 Agosto 2006 às 15:09GMT

Interessante, mas prefiro ainda dá o f5 na página inteira.

# 30° Felipe Sander Segunda-feira 07 Agosto 2006 às 22:29GMT

F5 atualiza a página inteira, imagens, textos, etc, e com este botão atualiza somente o código CSS, ou seja, economiza banda e tempo do refresh.

Sensacional.

# 31° marko Quarta-feira 30 Agosto 2006 às 16:10GMT

muito bom, adorei!!

# 32° Marcos Segunda-feira 04 Setembro 2006 às 15:31GMT

Legal d + cara

# 33° Thiago Risso Quinta-feira 23 Novembro 2006 às 08:53GMT

Muito boa mesmo..
Fiz um ajustezinho pois no minha aplicação na funcionava pois ela contém frames…
Segue abaixo modificação para funcionar com frames :

void( function(){var i,a,s,f,fs;f=document.getElementsByTagName(“frame”);for(var ss=0;ss < f.length;ss++){fs = f[ss];if(fs.contentWindow){a=fs.contentWindow.document.getElementsByTagName(‘link’); for(i=0;i=0&&s.href){ var h=s.href.replace(/(&|%5C?)forceReload=d+/,”); s.href=h+(h.indexOf(‘?’)>=0?’&’:'?’)+’forceReload=’+(new Date().valueOf())}}}}})();

# 34° Thiago Risso Quinta-feira 23 Novembro 2006 às 09:17GMT

ops… O script acima funciona só em frames….
Assim funciona tanto em frames quanto sem :

javascript:void( function() { var i,a,s,f,fs;f=document.getElementsByTagName(“frame”); if(f.length==0){f=[window]}; for(var ss=0;ss < f.length;ss++) { fs = f[ss];fsc =fs.contentWindow ? fs.contentWindow : (fs.document ? fs : false); if(!fsc)continue; a=fsc.document.getElementsByTagName(‘link’); for(i=0;i=0&&s.href){ var h=s.href.replace(/(&|%5C?)forceReload=d+/,”); s.href=h+(h.indexOf(‘?’)>=0?’&’:'?’)+’forceReload=’+(new Date().valueOf()) } }}})();

# 35° jorge Segunda-feira 04 Dezembro 2006 às 21:51GMT

Algumas pessoas quando estão escrevendo e erram,
costumam apagar a linha onde erraram
e refazer a linha novamente, outras
preferem apagar TUDO começar de novo.
Realmente isso é uma questão de estilo,
e apagar somente os estilos pode ser uma coisa
muito divertida se você está montando um página mutante !
é isso aí !

# 36° heitor Quarta-feira 18 Abril 2007 às 12:46GMT

impressionate!!!!!

Deixe um comentário

Observação: Todos os campos obrigatórios estão marcados com um asterisco (*).

Informações de Contato

Sobre o Revolução Etc

Henrique Costa Pereira O Revolução Etc é o site pessoal do Henrique C. Pereira que trabalha com design de interfaces, planejamento, arquitetura da informação e desenvolvimento para web. Ele escreve aqui sobre várias coisas relacionadas com acessibilidade, web standards, tecnologia, desenvolvimento e o que mais der na telha, além de eventualmente escrever alguma coisa ou outra para o Webinsider. Leia mais.

Publicidade

  • Banner
  • Banner

Livros

Livros que vão colocar minhocas na sua cabeça.

Música na vitrola

Basicamente são minhas bandas preferidas.

Henrique Costa Pereira - Revolução Etc - (CC) Alguns Direitos Reservados - Powered by WordPress

O conteúdo deste site de autoria de Henrique Costa Pereira está sob a licença de Creative Commons Atribuição-Uso Não-Comercial-Compartilhamento pela mesma Licença 2.5 Brasil. Permissões e/ou restrições além do escopo desta licença podem ser vistas e/ou requeridas na minha página de licença.

Nenhum conteúdo deste site pode ser copiado e reproduzido em outro site sem autorização do autor! Mais detalhes aqui!

Powered by WordPress