Tárcio Zemel

Atua profissionalmente há 8 anos na área de desenvolvimento para web. É criador e escritor dos blogs desenvolvimento para web e CodeIgniter Brasil.

SmartScroll: Scrolls Mais Profissionais E Eficientes

SmartScroll logo

É sabido por todos do desenvolvimento web que existem certas “desavenças” entre programadores e designers. Os programadores querem sempre um código mais enxuto e um site mais objetivo; os designers preocupam-se principalmente com a aparência e visualização dos componentes das páginas. Um dos pontos que mais gera discussões é sobre os scrolls de um site.

A rolagem de tela é sempre padrão e acompanha o visual que já vem no navegador. É algo padrão e, geralmente, quando se quer alterar isso, recorre-se a componentes em flash ou java. Mas existe uma solução muito mais simples e fácil de se instalar, que vai fazer com que scrolls sejam bonitos e eficientes ao mesmo tempo, acabando de vez com essa parte dos conflitos entre designers e programadores: trata-se do SmartScroll.

Com o SmartScroll é possível dar estilos ao scroll de elementos na página, ao mesmo tempo em que uma espécie de sumário navegável é apresentado ao lado do elemento, possibilitando o acesso rápido a títulos que compõem o conteúdo da área de rolagem.

Usando SmartScroll

Depois de baixar o SmartScroll, a primeira coisa se fazer é colocar no <head> as chamadas para jQuery e o script do SmartScroll, em si:


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<script type="text/javascript" src="/js/jquery.smartScroll.min"></script>

Lembrando que o caminho acompanha a estrutura de seu site e, sempre que possível, é bom usar a última versão do jQuery por, geralmente, ser mais rápida e eficiente em seus métodos e funções.

Caso queira se valer da Mouse Whell Extension, que permite o scroll pela rodinha do mouse, basta fazer a chamada, também.

Opções do SmartScroll

O uso do SmarScroll é, necessariamente, acompanhado por algumas de suas opções, que são:

  • prefix. Adiciona um prefixo denome de classe para cada elemento criado (string).
  • width. Largura da scrollbar (int).
  • height. Altura da scrollbar (int).
  • mode. Nesta versão do plugin, a única opção é “drag-vertical” (string).
  • fx. “normal” ou “tips” (string).
  • wheelGap. “Distância” da rolagem quando se usa a rodinha do mouse (px).
  • smart. Habilita o “smart mode” (bool).
  • fixWidth. Corrige o bug de float do IE7 caso o alvo do SmartScroll tenha margem (int).

Por exemplo, um smart scroll com prefixo de classe “v1”, largura de 300px, algura de 500px, whell gap de 40px e smart mode habilitado:


$('#MyTarget').smartScroll({
  prefix: 'v1',
  width:30,
  height:500,
  wheelGap:40,
  smart:true
});

Outros exemplos podem ser vistos na página oficial do SmartScroll plugin.

Além destas opções, é preciso ter em mente o esquema de CSS usado no SmartScroll. Sem ele, é impossível estilizar corretamente seu scroll e você não conseguirá customizá-lo.

SmartScroll CSS Schema
SmartScroll CSS Schema: clique para ampliar

Pode parecer um pouco confuso mas, basicamente, basta envolver o conteúdo que se quer fazer scroll em uma div qualquer e inicializar o script a partir de seu ID, passando as opções desejadas. Veja um exemplo simples de CSS:


div#MyTarget {
width:240px; height:140px;
}

div.MyPrefix_targetContainer {
border:1px dotted #ccc;
}

div.MyPrefix_target {
height:auto;
margin-bottom:10px;
}

div.MyPrefix_sliderBackground {
background:#0CF;
}

div.MyPrefix_cursor {
height:26px; background:#09F;
}

Smart Mode

Uma das opções do SmartScroll é o “smart mode” que, por padrão, vem habilitado. Ele funciona juntamente com o parâmetro “fx”:

  • normal. Todos span ficam visíveis.
  • tips. Os span ficam com efeito de aparecimento.

Se ainda não ficou clara essa funcionalidade, veja este exemplo simples de títulos dentro do container-alvo do SmartScroll:


<div id="MyTarget">
  <p title="Span #01" class="bigBlue">SPAN #01</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
  <p title="Span #02" class="smallBlue">SPAN #02</p>
  <p>Conteúdo</p>
  <p title="Span #03" class="bigBlue">SPAN #03</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
  <p title="Span #04" class="smallBlue">SPAN #04</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
  <p title="Span #05" class="smallBlue">SPAN #05</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
  <p>Conteúdo</p>
</div>

Conclusões sobre o SmartScroll

Certamente é um diferencial, para a apresentação de conteúdos com scroll num site, uma aparência personalizada e efeitos de sumarização de conteúdos. Ter scroll diferenciado, condizente ao design do site mostra que os desenvolvedores tiveram um cuidado especial com esta parte e passa uma caracterização mais profissional.

Por estes motivos, o SmartScroll está recomendado!

Quite Delicious Button: seus artigos no Delicious de forma elegante

Quite Delicious Button

Depois do advento da chamada web 2.0 (termo que, pessoalmente, não tenho muita afinidade), o mote do compartilhamento ficou forte. Serviços dos mais diversos, que favorecem este objetivo, foram surgindo e surgem até hoje; dentre estes serviços, um dos mais “tradicionais”, conhecidos e populares é o Delicious, que serve para as pessoas fazerem favoritos online e compartilhar estes endereços de sites com os outros membros da comunidade através de critérios e filtros simples e eficientes.

E uma boa maneira de favorecer a divulgação e compartilhamento das páginas de seu site é prover um meio fácil para que seus visitantes adicionem suas URLs em seus respectivos delicious. Para isso, existe uma maneira simples e elegante: o plugin para jQuery Quite Delicious Plugin.

Com Quite Delicious é possível apresentar um botão para que as pessoas facilmente adicionem um link a seus delicious, isso de forma bastante simples e com um visual agradabilíssimo, bem ao estilo Delicious. E mais: o botão é feito sem a utilização de imagens, o que torna seu funcionamento e carregamento do site, como um todo, melhores (mostrando, inclusive, quantas outras pessoas já favoritaram a página).

Usando o Quite Delicious Button

A primeira coisa é inserir os scripts-base necessários (é possível fazer download do Delicious Button e inserir o script diretamente, caso prefira):


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" target="_blank"></script>
<script type="text/javascript" src="http://delicious-button.googlecode.com/files/jquery.delicious-button-1.0.min.js" target="_blank"></script>

É preciso que, na página que vai se valer do plugin, exista um link com a classe “delicious-button” e apontando para o URL que se deseja usar.


<a class="delicious-button" href="http://www.webmaster.com.pt/">Salvar no Delicious</a>

Seu botão para os visitantes adicionarem a página ao delicious já está pronto! Vale lembrar que, por padrão, o título usado para favoritar no delicious é o título da própria página, portanto, atenção com o SEO.

Outra maneira de inserir o Quite Delicious Button

Existe uma outra maneira de se ativar o plugin para o link desejado, utilizando um pouco da própria programação do jQuery. Exemplo:


<a class="delicious-button-2" href="http://delicious.com/save">Salvar no Delicious</a>
<script type="text/javascript">
$(document).ready(function(){
   $('a.delicious-button-2').deliciousButton({
      url: 'http://www.webmaster.com.pt/',
      title: 'Webmaster.pt - Marketocracia Digital',
      button: 'wide'
   });
});
</script>

Com isso, dentre as opções do Quite Delicious Button, é possível usar o botão “wide“, mais discreto e compacto.

Conclusão sobre Quite Delicious Button

É excelente quando divulgação espontânea acontece com as páginas de um site. É sinal de que as coisas estão indo bem e o trabalho feito está rumando pelo caminho certo. Aproveitar para facilitar o trabalho de quem quer efetuar essa divulgação, certamente é mais um ponto positivo para o sucesso do site e, usando o Quite Delicious Button, isso é feito de forma bastante elegante e agradável.

Use sem moderação!  😉

jQuery MessageBox Handler: Limitar Caracteres Áreas Texto

jQuery MessageBox Handler

É baste comum a situação em que, num formulário interativo de internet, alguns “efeitos” se façam necessários para melhorar a interação deste form com quem o está usando. Algumas dessas vezes é um contador (ou limitador) de caracteres digitados que é necessário. Por exemplo, você tem um campo no form que só pode admitir 250 caracteres, então, como fazer caso a pessoa digite mais do que isso?

A resposta é: jQuery MessageBox Handler!

Com MessageBox Handler é possível definir um valor máximo de caracteres que podem ser digitados em campo textarea. Caso este valor seja ultrapassado, o botão de submeter o  formulário é automaticamente desabilitado, impossibilitando seu envio.

Usando jQuery MessageBox Handler

Pode parecer incrível, mas, para usar o MessageBox Handler com suas configurações deafult. Depois de fazer download, basta somente 1 linha:


$('.message-box').messageBoxHandler();

Onde “message-box” é uma div que contém o formulário.

Opções do jQuery MessageBox Handler

Na maioria das vezes, é certo que as opções que vêm por padrão não são as suficientes, pois cada formulário terá suas necessidades e especificações. Para tais casos, o plugin conta com uma série de opções:

  • maxUpdateChars (140). Número máximo de caracteres permitidos.
  • submitBtn (null). O botão de enviar (por padrão, pega o que está dentro do seletor escolhido.
  • leftCharsCounterClass (null). Classe para a contagem de caracteres restantes.
  • counterErrorClass (‘counter-error-length’). Classe para quando o limite de caracteres é ultrapassado.
  • disabledClass (‘disabled’). Classe para quando o botão de enviar está desabilitado.
  • emptyMessageText (”). Mensagem que aparece quando não há nada dentro da textarea (normalmente, usa-se o default).

Então, em um exemplo, se fosse preciso uma textarea (dentro de uma div  de ID “especial-form”) com limite de 100 caracteres, com classe para o contador “count” e a classe de erro fosse “count-error”, teríamos o seguinte código:


$('.especial-form').messageBoxHandler({
    maxUpdateChars: '100',
    leftCharsCounterClas: 'count-error',
    counterErrorClass: ''
});

Conclusão sobre o jQuery MessageBox Handler

Quando se tem formulários interativos em um site, certamente estes são de muita valia, tanto para validação front-end, quanto para garantir que o visitante tenha uma boa experiência dentro daquele espaço virtual.

Usando o MessaBox Handler, certamente você poderá planejar e executar mais facilmente as interações de seus formulários online.

Efeitos De Som Em WebSites: O Sonoro É bom?

Efeitos de som em web sites: bom ou ruim?

Existe uma polêmica forte entre desenvolvedores web sobre colocar ou não efeitos sonores em web sites. Alguns são da opinião de que é algo ultrapassado, sem necessidade, irritante e até mesmo “brega”. “Isso é tão 1998”, dizem. Embora não deixem de ter certa razão, é importante não perder de vista que cada projeto possui necessidades, especificações e peculiaridades próprias e que, na web, lidar com generalizações, em certos casos, pode ser algo perigoso.

Ter som ou não ter som?

Os argumentos de quem defende que um site não precisa de efeitos sonoros são muitos, dentre eles:

  • “É desnecessário”
  • “Não tem utilidade”
  • “O site fica mais pesado”
  • “Ninguém se importa com isso”
  • “Há coisas mais importantes”
  • “É algo ultrapassado”
  • “A bounce rate do site aumenta”
  • etc

Segundo podemos ver, muitos dos argumentos são válidos, enquanto outros, nem tanto. Vamos analisar cada um destes.

“É desnecessário”

O argumento é parcialmente certo, pecando pela ampla generalização do argumento. Na web, principalmente no desenvolvimento web, afirmar uma generalização com toda a certeza geralmente é um equívoco.

Pode haver, sim, sites em que efeitos sonoros são totalmente inúteis e desnecessários (ousaria dizer que, na maioria dos casos, é assim). Entretanto, há sites que “ganham vida” quando efeitos de som estão integrados a sua interatividade, tornando a experiência de uso melhor e aumentando a agradabilidade.

“Não tem utilidade”

É o caso parecido com o anterior. Tanto pode ser uma afirmação verdadeira, quanto pode não ser.

Certamente que para um site de engenharia, sons de britadeira e bate-estaca não teriam utilidade nenhuma. Agora, imaginem o site de uma casa noturna: um player com músicas da casa sendo apresentadas aos visitantes certamente se faz um bom “climatizador”. Sejam os visitantes já frequentadores do estabelecimento ou, simplesmente, pretensos a isso, conhecer o som que é oferecido pela casa noturna é uma experiência interessante a ser levada em consideração.

“O site fica mais pesado”

Verdade.

Independente do motivo, a motivação, o argumento ou a técnica de desenvolvimento utilizada para conferir efeitos de som ao site, é fato de que as páginas com este tipo de recurso têm peso maior (embora existam técnicas para amenizar isso). Afinal, é um elemento a mais que deve ser carregado.

Por isso, é importante fazer uma análise séria sobre a real necessidade de haver ou não efeitos sonoros em um web site.

“Ninguém se importa com isso”

Mais uma vez, uma generalização perigosa. Talvez o dono do web site se importe; talvez o público se importe; talvez os acionistas se importem… Muita gente pode se importar, isso é fato. Mas o fato de “poder”, não quer dizer quem efetivamente, vai acontecer.

Se tiver pretensões e/ou projetos de inserção de som no web site inteiro ou somente algumas páginas, a situação ideal é fazer alguns testes de usabilidade. Caso não tenham condições, faça o melhor que seja possível, tomando por base cases, benchmarks e até mesmo o feeling do projeto.

“Há coisas mais importantes”

Geralmente há, sim, coisas mais importantes a serem feitas no projeto e desenvolvimento de um site que se preocupar com efeitos sonoros, sejam estes contínuos ou ativados por ações. Entretanto, caso se tenha decidido que este recurso estará presente, então ele faz parte do “todo”, e o as partes do “todo” do projeto são igualmente importantes.

“É algo ultrapassado”

Pessoalmente, considero este argumento fraco. Afirmar que algo é “ultrapassado” e encerrar o assunto não faz o menor sentido. Ainda mais que o desenvolvimento web tem suas “fases”, com suas “tendências” que vão e voltam, sendo importantes numa época, desconsideradas e estando prontas para voltar a ativa em um momento futuro.

Mais uma vez, deve-se considerar a importância e necessidade da inserção do recurso de som.

“A bounce rate do site aumenta”

Parcialmente verdadeiro. Há sites em que, assim que são carregados, uma “música ambiente” começa a tocar automaticamente. Os “gurus” da usabilidade sugerem que isto é um equívoco (neste caso, pode aumentar a taxa de rejeição, sim).

O ideal-teórico é disponibilizar o recurso de som, mas que isto venha desabilitado por padrão. Caso a pessoa queira escutar a(s) música(s), ela deve, explicitamente, optar por isso, e não ter sua escolha “antecipada” pelo próprio site.

Imaginem se todos os vídeos do YouTube começassem a passar assim que se entra na página inicial…

Como inserir efeitos de som em um site

Depois de muito analisar e comparar, pode ser que você e/ou sua equipe cheguem à conclusão de que, realmente, adicionar recursos sonoros no site será bom para o sucesso do site e experiência dos visitantes. Suponhamos que, no menu do site, um som deva ser acionado sempre no mousehover ou click. É algo simples de se fazer com jQuery (depois de chamar apropriadamente o jQuery e fazer a inicialização do mesmo, como tem sido mostrado em diversos outros artigos de jQuery do Webmaster.pt):


$(function(){
    $('a.click').click(function(){
        $('embed').remove();
        $('body').append('<embed src="click.wav" autostart="true" hidden="true" loop="false">');
    });
 
    $('a.hover').mouseover(function(){
        $('embed').remove();
        $('body').append('<embed src="hover.wav" autostart="true" hidden="true" loop="false">');
    });
}); 

Caso o evento seja outro, basta escolher o que atende às necessidades do projeto.

Evidentemente existem muitas e muitas outras técnicas para se conseguir o mesmo efeito, mas esta é bastante simples e pode ser executada sem complicações. Caso conheça outras, compartilhe conosco fazendo um comentário!

Conclusões sobre efeitos de sons em sites

Como conclusão, nenhuma novidade precisa ser dita, somente o que já foi citado diversas vezes ao decorrer do texto: cada projeto é único e possui suas particularidades.

Se é preciso, necessário, requerido ou não o uso de efeitos sonoros num site, página, ativador, evento, ou o que quer que seja, esta decisão deve ser tomada e avaliada com bastante cuidado, levando sempre em consideração o “custo/benefício” e tendo sempre em mente a pergunta: “O que os visitantes do site estarão ganhando com isso?”.

Certamente, inserir sons em sites é algo importante a se considerar e, como qualquer decisão importante, deve ser pesada e avaliada com cautela. No desenvolvimento web, assim como em muitas outras áreas da vida, os detalhes fazem a diferença.

E você, é a favor ou contra à utilização de efeitos de som em web sites?

Avisos Personalizados Com Plugin jQuery Humanized Messages

Humanized Messages exemplo

Muitas vezes é preciso exibir mensagens, alertas ou avisos  para visitantes de sites ou usuários de sistemas virtuais, como CMSs, Home Brokings, E-commerces, Intranets, dentre muitos outros. A fim de incrementar a usabilidade e melhorar a experiência das pessoas, é aceitável e conveniente que estas mensagens sejam exibidas de maneira suave, agradável, não obstrusiva.

Existe uma maneira de exibir mensagens personalizadas e, ainda por cima, gerar um log de eventos em um site. É uma maneira bastante simples, feita através do plugin para jQuery Humanized Messages.

Com Humanized Messages é possível mostrar mensagens personalizadas que aparecem de maneira a não incomodar nem atrapalhar a navegação e, como plus, é possível registrar log com os “passos” do visitante (excelente para ser usado em recursos de auditoria em sistemas corporativos, por exemplo).

Usando o Humanized Messages

Primeiramente, faça download do Humanized Messages. No arquivo compactado, já virá o javascript principal, uma folha de estilos e um jQuery. Preferencialmente, utilize a última versão do jQuery:


<link rel="stylesheet" type="text/css" href="humanmsg.css" />
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src="humanmsg.js"></script>

Para não dar problemas de compatibilidade (principalmente com Internet Explorer), lembre-se de usar um Doctype adequado e declará-lo corretamente.

Então, para fazer o Humanized Messages funcionar, a chamada para o código é:


humanMsg.displayMsg("MENSAGEM");

Vamos supor que queiramos ativar o Humanized Messages sempre que links de classe “msglog” forem clicados. A linha de código seria (depois de o jQuery já iniciado, claro):


$('a.showmessage').click(function() {
  humanMsg.displayMsg('Você clicou em um link especial e seu conteúdo é:' + $(this).text() + '!');
  return false;
});

E pronto! A partir de agora, sempre que este link for clicado, uma mensagem mais “humanizada” aparecerá através de uma apresentação elegante e sofisticada! Se mesmo assim não gostar, basta alterar o CSS para que fique do agrado.

Claro que, com alguns ifs e elses, é possível apresentar menagens dinâmicas, que podem servir para diversas finalidades.

Conclusão sobre o Humanized Messages

Realmente o Humanized Messages traz, através de um uso simples e ultrarápido, a possibilidade de exibição de mensagens variadas em seu site, software, intranet, extranet, sistema virtual ou qualquer outro.

O log que aparece é para fins meramente “ilustrativos”. Em um site ou sistema do mundo real, seria possível realmente aproveitar este plus do Humanized Messages para fazer um log de verdade e, para fazer isso, é bastante simples. Basta usar alguma função de AJAX do jQuery e enviar alguma mensagem para cada clique a um arquivo no servidor que faz a inserção num banco de dados.

Mas isso é assunto para outro artigo…  😉

Adicione Os Seus Tweets Ao Site Com jQuery

jQuery Twitter plugin

É inegável que, atualmente, o Twitter é um dos serviços mais amplamente usados na internet. Seja através do próprio site, seja através de utilizações de sua API ou o uso de mashups, usar o twitter, atualizar ou ler as mensagens de seus amigos através do microblog é algo feito por milhões e milhões de pessoas no mundo inteiro.

Pode ser útil incluir em um web site as últimas mensagens do twitter, seja este o caso de um web site pessoal ou alguma corporação que queira deixar sempre um conteúdo recente e à mostra para todos seus visitantes. Seja qual for o caso, é possível, de maneira bastante fácil, incluir em seu site suas últimas mensagens do twitter com o jQuery Plugin for Twitter (nome bastante sugestivo, hã?).

Usando o jQuery Plugin for Twitter

Primeiramente, visite a página oficial do jQuery Plugin for Twitter e faça download do plugin. Dentro do arquivo compactado, virão alguns arquivos com exemplo, CSS, etc, mas, o que realmente importa, é o jquery.twitter.js. De qualquer maneira, para fins de testes, os demais arquivos também são importantes.

Para usar o jQuery Plugin for Twitter, primeiramente faça a chamada ao jQuery e ao arquivo do plugin no cabeçalho de sua página (se quiser, insira também o arquivo css que vem no pacote para ter uma estilização básica):


<link rel="stylesheet" type="text/css" href="jquery.twitter.css" />
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src="jquery.litebox.min.js"></script>

Depois disso, escolha uma div qualquer em seu HTML para ser o “container” do jQuery Plugin for Twitter e inicie:


$(document).ready(function() {
    $("#twitter").getTwitter({
        userName: "tarciozemel",
        numTweets: 3
    });
});

Pronto! Carregue sua página em algum navegador para testar.

Opções do jQuery Plugin for Twitter

As opções do jQuery Plugin for Twitter são as seguintes:

  • userName. Username de quem os tweets serão mostrados (string).
  • numTweets. Número de tweets a serem mostrados (int).
  • loaderText. Texto que aparece enquanto os tweets estão carregando (string).
  • slideIn. Se, quando os tweets carregarem, acontecerá o efeito slide (bool).
  • slideDuration. Duração do efeito slide (ms).
  • showHeading. Se um cabeçalho será exibido (true).
  • headingText. O texto do cabeçalho a ser exibido (string).
  • showProfileLink. Se o link para o profile será exibido (bool).
  • showTimestamp. Se o timestamp dos tweets será exibido (bool).

Segundo estas opções, se fosse preciso exibir os últimos 5 tweets do profile “testprofile”, sem o efeito de slide, sem cabeçalho e sem timestamp, teríamos o seguinte código:


$(document).ready(function() {
    $("#twitter").getTwitter({
        userName: "testprofile",
        numTweets: 5,
        slideIn: false,
        showHeading: false,
        showTimestamp: false
    });
});

Conclusões sobre o jQuery Plugin for Twitter

Como pôde ser visto, o jQuery Plugin for Twitter é bastante simples de usar e cumpre bem o papel a que se propõe – contando, ainda, com algumas opções extra bem interessantes.

Se a necessidade é exibir os últimos tweets de sua empresa, de seu profile pessoal ou alguma outro profile do twitter que se queira, certamente usar o jQuery Plugin for Twitter é uma boa opção!

Lightboxes Rápidos E Leves Com jQuery Litebox

jQuery Litebox logo

Já há algum tempo, não é nenhuma novidade um site ter algum tipo de script lighbox para exibir imagens, fotos ou qualquer outro tipo de imagem ou conteúdo textual. Alguns anos atrás, os sites que se valiam deste recurso eram vistos com espanto e admiração, pois, na época, o recurso de lightbox era inovador.

Hoje já não é mais assim, e é muito comum qualquer site que tenha que exibir imagens usar alguns dos, literalmente, milhares de lightboxes existentes. Na verdade, o foco, hoje, além da beleza do efeito, está na rapidez e simplicidade com que o efeito acontece, ou seja, está focado mais na usabilidade.

E é para quem está buscando um efeito lighbox que tenha simplicidade, rapidez e leveza que existe o jQuery Litebox!

O jQuery Litebox não tem nada de extraordinário, em comparação a outros scripts de lighbox, mas, como citado, seu ponto forte é ser rápido e leve, além de funcionar com configurações mínimas e estar pronto para uso em segundos. E mais: o Litebox não precisa de imagens funcionar!

Usando  o jQuery Litebox

A primeira coisa a se fazer, como de costume, é baixar o jQuery Litebox. Depois disso, é preciso inserir os javascripts necessários para seu funcionamento nas páginas em que se queira usá-lo (apontando os arquivos corretamente, segundo sua estrutura de pastas e, de preferência, sempre a versão mais atual do jQuery):


<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src="jquery.litebox.min.js"></script>

Segundo o comportamento padrão do Litebox, ele sempre exibirá o que está dentro da div com id “litebox” na página. Também, o trigger de fechamento sempre se dará através de um elemento com id “close” (geralmente, um link “X”) dentro do elemento #litebox. Então, por padrão, é preciso ter um trecho HTML como:


<div id="litebox">
  <p>Conte&uacute;do litebox...</p>
  <a id="close">X</a>
</div>

E pronto, seu Litebox já está pronto para funcionar! Obviamente que é possível dar uma “vida” adicionando algum estilo através de CSS, mas, como “prometido”, o script já funciona em poucos segundos! Para fins de testes, vamos nos valer do seguinte CSS (faça, você, o que melhor se aplica ao web design de seu site):


#litebox {
background:#FF9900;
color:#FFF;
height:200px;
text-align:center;
width:400px;
}

#litebox #close {
cursor:pointer;
position:absolute;
right:10px;
top:10px;
}

Para seu funcionamento, basta o javascript:


$('#exemplo').litebox();

Opções do jQuery Litebox

Algumas poucas opções pode ajudar à obtenção de uma melhor customização e uso do script:


$('#exemplo').litebox({
    // ID do conteúdo do litebox
    target : 'litebox',
  
    // velocidade (ms) de exibição do litebox
    liteboxShowSpeed : 800,
  
    // ID do elemento para fechar o litebox
    close : 'close',
  
    // Velocidade (ms) que a tela "desescurece"
    overlayHideSpeed : 100
});

Então, se fosse preciso o uso do litebox em uma div de id “comunicado”, cujo lightbox apareceria em 650 milissegundos, o código seria:


$('#exemplo').litebox({
    target : 'comunicado',
    liteboxShowSpeed : 650
});

Conclusão sobre Litebox

Realmente o jQuery Litebox é um script muito leve e muito fácil e simples de se usar. Principalmente para sites que já não tenham tanta performance, utilizá-lo como solução para lightbox (ou substituir algum já existente) pode ser uma boa pedida!

Lembrando que, com um pouco mais de jQuery, é possível melhorar ainda mais o uso do script, alterando o conteúdo da div de funcionamento dinamicamente para não ficar “travado” a exibir somente um conteúdo como Litebox. Mas isso é assunto para outro artigo…  😉

Text Hints Em Campos De Formulário Com CoolInput

jQuery CoolInput exemplo

Existem diversas técnicas para se aprimorar a usabilidade de formulário na web, desde otimização e aprimoramento semântico do XHTML, passando por dicas de uso de CSS para exibição “correta” dos elementos, até uso de variados javascripts para tentar melhorar a experiência de quem usa forms na internet.

E, um plugin jQuery que vem contribuir para esta finalidade é o CoolInput!

O CoolInput se propõe a ser um plugin leve e rápido para exibir text hints (aqueles textos explicativos que ficam dentro dos campos dos formulários e, quando o campo recebe o foco, ele some para permitir a digitação) e ícones ilustrativos em campos de forms. Como não poderia deixar de ser, quando o assunto é jQuery, seu funcionamento é facílimo!

Usando CoolInput

Como sempre, a primeira coisa a se fazer é baixar o CoolInput. Depois disso, inserir corretamente, respeitando sua estrutura de diretórios (e, preferencialmente, usando a versão mais recente do jQuery), a chamada para o framework e para o script dos text hints:


<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src="jquery.coolinput.min.js"></script>

Por padrão, o CoolInput pega o que conta no atributo “title” do respectivo campo do formulário e faz dele o text hint. Então, vamos supor que temos o seguinte código XHTML de formulário (apenas para fins didáticos, pois faltam alguns atributos em “form” para o form, efetivamente, funcionar):


<form>
  <input type="text" id="nome" name="nome" title="Seu nome" />
  <input type="text" id="email" name="email" title="E-mail para contato" />
  <input type="text" id="site" name="site" title="Web site" />
  <textarea rows="5" id="msg" cols="35" name="msg" title="Sua mensagem"></textarea>
  
  <input type="submit" id="submit" name="submit" value="Enviar" />
</form>

Para fazer com que o elemento “nome” tenha text hint através do CoolInput, basta:

$('#nome').coolinput();

Mas, como somos pessoas já conhecedores dos seletores jQuery, sabemos que é possível usar o CoolInput no formulário inteiro com apenas uma linha de código:

$('form *').coolinput();

Mais fácil, impossível!  😉

Opções do CoolInput

Algumas opções bastante úteis podem ser usadas para gerar text hint em campos de formulários com o CoolInput. São elas:

  • blurClass. Classe CSS para quando o foco sair do campo (blur).
  • clearOnSubmit. O padrão é “true”, mas, caso seja usado o valor “false”, o conteúdo do text hint será enviado no formulário.
  • iconClass. Classe CSS para o caso de se querer um ícone no campo.
  • hint. O próprio text hint (caso se queira especificar manualmente).
  • source. ID do elemento que será o text hint (text hint dinâmico).

No caso deste script, não é preciso mais exemplos com as opções, haja vista que a linha de código mostrada anteriormente, que faz com que o CoolInput seja aplicado em todo o formulário, deve ser usado em mais de 90% dos casos.

Uma que é bastante usada, também, é a de exibir um ícone ilustrativo, mas para isso, basta colocar a opção “iconClass” com o nome da classe CSS que tem o ícone como background e pronto.

Conclusão sobre o CoolInput

Certamente é um grande avanço para a usabilidade formulários na web terem text-hints em seus campos. Com o CoolInput, a tarefa de fazer com que esses text hints existam e sejam valiosos para a experiência das pessoas que acessam web sites nunca foi tão fácil!

Portanto, usem e abusem do CoolInput e, claro, caprichem na apresentação do formulário usando um excelente CSS!

Neve Em Seu Site Com jQuery Snowfall

jQuery Snowfall

É muito comum, nesta época do ano, web sites fazerem temas personalizados de Natal e Ano Novo para agradar mais seus visitantes e “entrar no clima”, já que a maioria dos sites sempre customiza alguns elementos de seus web design padrão para se adequar a estas épocas de festas.

Aparentemente isto é inútil, mas, na prática, mostra para seus visitantes que você está sempre atualizando o site e se importa em adequar seus conteúdos e visual a épocas que são importantes para muitas pessoas. Em suma, mostra que você se importa com seus visitantes e quer lhes apresentar algo de especial!

Um dos efeitos mais usados é fazer “nevar” no site. E, caso você não saiba como fazer isso, existe um plugin para jQuery que faz o trabalho muito bem: jQuery Snowfall!

Usando O jQuery Snowfall

Faça o download do jQuery Snowfall e, como de costume, faça uma chamada ao jQuery (de preferência o mais recente) e ao script (respeitando sua estrutura de diretórios):


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript" src="snowfall.min.jquery.js"></script>

E, agora, a mágica! Para fazer nevar em seu site com somente 1 linha de comando, use:


$(document).ready(function(){
    $(document).snowfall();
});

Confira a página oficial do jQuery Snowfall para ver em funcionamento.

Opções Do jQuery Snowfall

E, também, é possível customizar a neve que cai em seu site através de algumas opções bastante interessantes:


options = {
    flakeCount : 35,        // number
    flakeColor : '#ffffff', // string
    flakeIndex: 999999,     // number
    minSize : 1,            // number
    maxSize : 3,            // number
    minSpeed : 2,           // number
    maxSpeed : 3,           // number
    round : false,          // bool
    shadow : false          // bool
};

Então, para o caso de se querer uma neve com sombra, de tamanho mínimo de 5px e tamanho máximo de 8px, use:


$(document).snowfall({
    shadow : true,
    minSize: 5,
    maxSize:8
});

Conclusão Sobre O jQuery Snowfall

A maioria dos visitantes dos sites se importam com datas comemorativas, e nestas datas, certamente algo de especial também é esperado de seu site (lembrando que este efeito de neve também é conveniente de ser usado durante todo o ano em sites que têm a ver com o efeito de neve, como pousadas em locais gélidos, sites de companhias de esqui e muitos outros casos).

Surpreenda seus visitantes com uma bela neve comemorativa nestas datas especiais e mostre que você se importa com sempre prover as melhores experiências e emoções!

Boas festas!

Quovolver: Citações Elegantes Em Seu Site

Quovolver logo

É bastante comum, para web sites dos mais diversos gêneros, o uso de citações de pessoas ou trechos de livros para corroborar determinado artigo ou, simplesmente, reforçar as mensagens e conteúdos, em geral, apresentados neste site. Outra situação bem comum é empresas usarem boas citações de seus clientes no site para corroborar a qualidade de produtos e/ou serviços.

Em (X)HTML, existe uma tags específicas para isso, sendo a mais conhecia a blockquote, que, semanticamente, foi projetada para a exibição de citações de pessoas e/ou publicações em páginas (X)HTML. Mas, às vezes, uma apresentação “crua” dessas citações não é o suficiente, e é neste ponto que entra o Quovolver!

O Quovolver interpreta um set de blockquotes e os apresenta de maneira mais elegante e sofisticada, alternando cada um deles e adaptando seu “container” para os respectivos tamanhos. Realmente algo bonito de se ver! E, como não poderia deixar de ser, é muito, muito simples de ser usado!

Usando Quovolver

Em primeiro lugar, faça o download do Quovolver (no momento da escrita deste artigo, está na versão 1.0). Você vai receber um arquivo compactado com 4 arquivos dentro:

  • index.html
  • jquery.quovolver.js
  • readme.txt
  • style.css

O único realmente essencial é “jquery.quovolver.js”, já que os outros são somente para exemplo, explicações e estilização (que, para o uso em sites “de verdade”, deve seguir a “linha visual” de onde o Quovolver será usado).

Então, para começar, é preciso chamar o jQuery juntamente com o arquivo js do Quovolver (usando sua própria estrutura de pastas, claro):


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js"></script> 
<script type="text/javascript" src="/js/jquery.quovolver.js"></script> 

Obviamente, é preciso ter um set de blockquotes para que o plugin funcione corretamente (é para isso que ele serve, certo?), então, em seu (X)HTML, deve existir uma estrutura, mais ou menos, assim:


<div class="widget_content"> 
  <blockquote> 
    <p> 
      &#8220;uspendisse potenti. Nam pellentesque, dolor sit amet egestas volutpat, quam leo eleifend mauris, sed blandit nulla odio eu tellus. Etiam dapibus mauris eu felis varius at tincidunt turpis interdum. Aenean vitae odio odio, nec cursus purus. Morbi justo justo, malesuada et consectetur vel, sodales sit amet lacus. &#8221;
    </p> 
    <cite>&#8211; Quote Author</cite> 
  </blockquote> 
  
  <blockquote> 
    <p> 
      &#8220;Vestibulum pellentesque sagittis tortor, vitae interdum justo mollis gravida. Maecenas vulputate, lacus et lacinia imperdiet, leo orci malesuada ipsum, volutpat aliquam sem augue sit amet mi. Nulla facilisi.&#8221;
    </p> 
    <cite>&#8211; Quote Author</cite> 
  </blockquote> 
  
  <blockquote> 
    <p> 
      &#8220;Suspendisse potenti. Cras a eros a nulla accumsan sollicitudin. Nulla id suscipit turpis. Nunc posuere vehicula erat, a tempor lorem aliquet ac.&#8221;
    </p> 
    <cite>&#8211; Quote Author</cite> 
  </blockquote> 
</div>

Então, basta 1 linha para ativar o Quovolver (depois de iniciar o jQuery):


$('blockquote').quovolver();

Pronto! As citações serão alternadas de tempos em tempos e o “box” que as envolve se adaptará dinamicamente a cada tamanho!

Uma dica é, quando for mexer no CSS para adaptar as citações dinâmicas, deixe a largura dos elementos de citação com largura fixa, especificando algum valor para a propriedade “width”. Isso garante que a animação ocorra somente no sentido vertical.

Opções do Quovolver

O Quovolver tem somente 2 opções:

  • speed. Velocidade da animação em milissegundos (padrão “500”)
  • duration. Tempo, em milissegundos, antes de trocar de citação (padrão “6000”)

Então, se fosse preciso ativar o Quovolver com velocidade de animação de 350 milissegundos e cada citação ficar disponível para leitura durante 5 segundos, o código seria:


$('blockquote').quovolver(350, 5000);

Conclusão sobre o Quovolver

Obviamente que nem todo site precisa de uma apresentação tão elegante e sofisticada de citações. Entretanto, utilizar o Quovolver para tal função, certamente é um diferencial!

Utilize o Quovolver com sabedoria e faça das citações uma arte!