Category: Programação

  • setTimeout() e clearTimeout()

    Para controlar quando uma função Javascript será executada, use setTimeout(), que aceita dois argumentos. O primeiro argumento é a nome da função, e o segundo, em quanto tempo a função será executada (em milisegundos).

  • Checkbox e radio com DOM

    Para criar um checkbox (ou radio) com o Document Object Model, basta fazer: var checkbox = document.createElement(‘input’); checkbox.type = ‘checkbox’; checkbox.name = ‘name1’; checkbox.id = ‘name1’; Para criar um input radio, basta mudar a propriedade type para “radio”. Para ter o HTML do checkbox: var div1 = document.createElement(‘div’); div1.appendChild(checkbox); Bastando usar div1.innerHTML no seu Javascript…

  • Tabelas dinâmicas

    Criar tabelas dinamicamente com o Document Object Model, adicionando e removendo linhas e células, é extremamente fácil. Basicamente envolve a intercalação das funções createElement e appendChild. Este artigo não seria possível sem a incrível documentação do Mozilla, especialmente “Traversing an HTML Table with JavaScript and DOM Interfaces“.

  • Rollover em linhas de tabelas, clique para marcação

    Esta pequena função foi feita copiando parte do código encontrado no phpMyAdmin. Eu precisava colorir linhas de tabelas conforme o mouse passava por elas, e colorí-las também quando o usuário clicasse nelas. No Javascript original do phpMyAdmin, o style com as cores de fundo das células estão dentro do <td>. Além disso, como todas as…

  • Múltiplas classes CSS em um mesmo elemento

    Sim, é possível, e é muito fácil. Para aplicar mais de uma classe em um elemento, basta separar os nomes com espaços, por exemplo: [html]lorem ipsum[/html]

  • Reverter a exclusão por svn de um arquivo

    Rodou svn delete arquivo.ext e se arrependeu? O Subversion permite desfazer essa ação. Você pode voltar o arquivo do repositório rodando svn revert arquivo.txt.

  • Pré-carregar imagem

    O pré-carregamento de imagens em Javascript ajuda com troca de imagens, por exemplo nos eventos de clique ou passagem do mouse (onmousedown e onmouseover), pois o visitante não precisará esperar ser carregada a imagem apenas quando o navegador disparar o evento. O pré-carregamento é feito com o seguinte código (lembre-se de colocar isso dentro de…

  • Esticar uma caixa verticalmente com CSS

    Quando você quer esticar uma caixa via CSS para ocupar todo um espaço vertical, a solução mais óbvia é fazer: [css].classe { width:100%; }[/css] E funciona na maioria das vezes. Entretanto, quando o doctype está em modo strict, a caixa não esticará para preencher todo o espaço. Isso acontece porque no modo strict, uma caixa…

  • Posições vertical e horizontal de um elemento

    Depois de penar por uma hora para descobrir uma maneira multi-plataforma de recuperar as posições vertical e horizontal de um objeto na tela, achei uma solução. Multi-plataforma no sentido que testei no Firefox 1.0.7, IE 6 e Opera 8.5 🙂 function pegarPosicaoX(objeto) { var atual_left = 0; if (objeto.offsetParent) { while (objeto.offsetParent) { atual_left +=…

  • svn cleanup “No such file or directory”

    Deu esse erro quando você rodou “svn cleanup”? Talvez porquê tenha dado erro no “svn checkout”? Então apenas apague o diretório da sua cópia de trabalho que o Subversion está reclamando e rode novamente “svn cleanup”. Também não entendi o motivo, mas funciona 🙂