Recarregando Páginas Usando Javascript Limpando os Parâmetros da URL

11 02 2009

Introdução

Precisava recarregar página via Javascript limpando os parâmetros da URL, exemplo:

meusite.com?teste=batata

tinha que virar

meusite.com

Pesquisei mas não achei nenhuma função nativa então implementei uma.

Solução

/*
 * recarregarSemParametro
 * Anselmo Battisti
 * battisti.wordpress.com
 * data 2009-02-10
 */
function recarregarSemParametro(){
   var url = window.location.href;
   if (url.indexOf("?") > -1 ){
     url = url.substr(0,url.indexOf("?")).toLowerCase();
   }
   window.location = url;
}
Exemplo:
<a href='#' onClick='recarregarSemParametro()'>Recarregar</a>

OBS: Se alguém souber um jeito melhor de fazer isso por favor me avise!





EXT Dicas e Truques III

16 08 2008

Saudações

Bom neste post vou falar um pouco sobre:

  • Adicionar eventos em objetos do EXT
  • Manipular elementos HTML via Ext
  • Manipular elementos do Ext através do seu html id

Bom vamos lá então

Continue lendo »





CONST não funciona no IE

4 07 2008

Salve guereiros da webSelva.

Hoje mais uma vez estava eu brigando um um código JS que não funcionava no IE, mas funcionava no Opera 9+ e  nos Firefox, olha o código:

   const SISTEMA_URL = 'http://192.168.0.1/~anselmo/sistema';

Fui pesquisar e descobri que a const é uma especificação da Mozilla e não funciona no IE, uma pena vou ter que usar var.

[]’s Anselmo Battisti





Transmissão de Conhecimento, usando a função dir do Firebug

19 06 2008

O firebug é uma extensão para o navegador firefox que tem por objetivo auxiliar desenvolvedores web durante o processo de criação de um site/aplicativo. Continue lendo »





Marcar Todos/Vários Checkbox de uma Vez usando Prototype

29 05 2008

Saudações

Todo mundo já teve que fazer um checkbox que ao ser clicado “ticava” todos os outros checkbox de uma lista. Hoje novamente passei por isso e escrevi um código Javascript que modéstia a parte achei bem bonitinho. Continue lendo »





Banco de Dados em Javascript ?

22 05 2008

Bom estava precisando que um pedaço do meu banco de dados fosse acessado pelo cliente diretamente por Javscript, ai vc pergunta porque? eu respondo! Porquê o cliente está em um ambiente, pasmem, sem acesso a internet. Sim estes lugares ainda existem acreditem! Continue lendo »





TinyMCE, Básico e Como Salvar os Dados Usando AJAX

7 05 2008

Saudações

Pessoal a algum tempo uso o tinymce como editor WYSIWYG nos projetos Web que participo, sempre usei ele no modo básico, ou seja, só colocava ele no sistema e boa, hoje tive que fazer duas coisas mais legais lol:

  1. Salvar os dados do Tiny através de AJAX;
  2. Criar um plugin com uns botões personalizados; Continue lendo »




Calendário Simples em Javascript

4 05 2008

Saudações

Pessoal ontem fiquei muito puto da cara com todos os calendário em Javascripts que já foram escritos na face da Web, me irritei com o seguinte:

  1. Alguns tinhas imagens e CSS demais;
  2. Outros tinham JS monstros como por exemplo o jscalendar tem mais de 50K;
  3. Milhões de funções e configurações inúteis;
  4. Escrever um monte de JS para fazer o calendário aparecer no HTML;
  5. Nenhum era melhor do que a Grazi Nua (isca pros taradão de plantão) Continue lendo »




IE não suporta observador Javascript em elementos SPAN

19 04 2008

Saudações bravos programadores Web, cada dia que passa mais acredito que:

Felizes aqueles que programam para ambiente Desktop pois não se preocupam com portabilidade entre Navegadores Web. Continue lendo »





IE7 – Problema com type Radio

17 04 2008

Saudações

Hoje em mais uma de minhas brigas homéricas com o IE7 descobri que: Para um campo do tipo radio funcionar no IE7 a propriedade name deve ser escrita antes da propriedade value.

Exemplo

<input type=’checkbox’ value=’10’ name=’teste’ /> NÃO FUNCIONA NO IE7

<input type=’checkbox’ name=’teste’ value=’10’ /> FUNCIONA NO IE7

E meus clientes ainda perguntam o motivo pelo qual eu uso, Firefox Opera Mozilla e não o IE7 me poupem !

Obs: Eu estava inserindo estes campos via Javascript

[]’s Anselmo Battisti





Problemas Com o IE7

27 03 2008

Hoje decidi de uma vez por todas parar de dar suporte ao ie6 nos sistemas e apenas dar suporte ao ie7, nossos clientes são orientados a usar o Firefox (que está a anos luz do IE), e eles usam e gostam e depois de algumas semanas não mais usam o IE pra nada, o problema são os clientes dos nossos clientes, eles ainda usam IE :(, o IE 6 é um pesadelo e por esta razão agora vamos dar um basta nele e dar suporte apenas ao IE7, perdemos muito tempo brigando com compatibilidade de um navegador extremamente atrasado. Continue lendo »





Colocar o Foco no Primeiro Campo da Página (input type=’text’)

22 03 2008

Reza a lenda que um desenvolvedor que preze pela usabilidade em suas aplicações deve se atentar aos detalhes. E muitas vezes um único detalhe aumenta consideravelmente a usabilidade geral da aplicação. Um bom exemplo deste fato é setar o foco no primeiro campo input do formulário da página. Continue lendo »





Prototype Ajax Bind e Outras ‘Futilidades’

5 03 2008

Saudações

Hoje precisei fazer uma interface para um de nossos sistemas que devido a quantidade monstruosa de chamas em AJAX que ao olhar para o meu firebug achei que estava usando o Gtalk (outra piadinha de micriro tá loco!), mas enfim com toda essa movimentação cliente servidor e tudo mais surgiram vários problemas, uns novos outros fantasmas antigos e que eu sempre lidava com eles com o meu jeito maroto de programar :), mas eis que vamos ao primeiro problema do dia, o BIND. Continue lendo »





Removendo Classes CSS de Elementos Usando Javascript / Prototype

4 03 2008

Supondo que você esteja desenvolvendo um formulário e resolve usar uma classe CSS para marcar os campos input que estão com problemas, a cada nova submissão você precisa retirar o CSS de erro dos campos input, como fazer isso usando a prototype:

    $$('.suaclassedeerro').each(function(node){
        node.removeClassName('suaclassedeerro');
    });

A função $$ é o seletor dinâmico de elementos através de regras CSS, o retorno dessa função é um vetor, a função each itera sobre todos os elementos de um vetor, para cada node do vetor será aplicada a função javascript removeClassName que remove uma classe de um elemento.

Eu sou defensor da seguinte tese:

– Programar usando qualquer Framework (desde que funcione é claro) é melhor do que programar tudo na unha!

Um abraço e até a próxima.





print_r Javascript

8 02 2008

Para quem está acostumando a usar o print_r no PHP sente falta de uma função parecida no Javascript,

function print_r(theObj){
   if(theObj.constructor == Array ||
      theObj.constructor == Object){.
      document.write("
    "); for(var p in theObj){ if(theObj[p].constructor == Array|| theObj[p].constructor == Object){ document.write("
  • ["+p+"] => "+typeof(theObj)+"
  • "); document.write("
      "); print_r(theObj[p]); document.write("
    "); } else { document.write("
  • ["+p+"] => "+theObj[p]+"
  • "); } } document.write("
"); } }

Peguei o código deste site

ATUALIZAÇÃO – 31/05/2008

Se você utiliza o firebug ai vai uma dica de debug:

  1. Clique em script;
  2. Abra o arquivo que você que tem a variável que você quer dar o print_r;
  3. Clique no número da linha logo abaixo da variável (o firebug irá criar um breakpoint)
  4. De um F5 e veja o firebug mostra as variáveis

Para uma versão mais detalhada, em inglês, consulte este site





Javascript Undefined

30 01 2008

Para testar se uma variável javascript está setada ou não faça o seguinte:

if(typeof variavel == 'undefined'){
   alert('vazia');
} else {
   alert('cheia');
}




Achando um Elemento com Prototype

6 12 2007

Caso você necessite descobrir se um dado elemento HTML existe ou não em sua página faça o seguinte:





Classe Formatar Moeda / Valores Monetários em Javascript

3 12 2007

Importante Para Download e Demonstração Acesse

http://battisti.etc.br/projetos/

A algum tempo coloquei aqui no battisti.wordpress 3 funções para manipular valores monetários. Hoje resolvi agrupa-las em uma única classe. Continue lendo »





Manipulando DOM com Prototype 1.6

5 11 2007

A algum tempo postei sobre o Easy DOM Creator, uma ferramenta bastante útil para realizar a manipulação dos elementos da árvore HTML. Sendo algum muito importante a biblioteca prototype está oferecendo nativamente esta funcionalidade a partir da versão 1.6 RC0.

O Exemplo abaixo sintetiza tudo o que é necessário saber sobre está função.

$(id_elemento).insert({      after: new Element('b',

{class:'msgErro'}).update('texto que será exibido')

});

O código acima irá:

  1. Criar um elemento negrito b;
  2. Setar ao elemento a classe msgErro;
  3. Inserir o texto ‘texto que será exibido’;
  4. Inserir o elemento criado depois do elemento cujo id é id_elemento.

Para inserir uma quebra de linha

$('mensagem').insert(new Element("br"));

Uma outra forma de inserir HTML sem usar o innerHTML é:

$('id').insert(
    "<tr><td>10</td><td>10</td></tr>";
);

Veja mais exemplos no site oficial da biblioteca prototype.





Problema com Aspas e Aspas Simples Prototype

10 04 2007

Saudações

O prototype quando enviar ” ou ‘ ele insere uma \ antes de cara ocorrência destes caracteres.

Para inserir corretamente em bases de dados é necessário remover esta barra e transformar os caracteres especiais em caracteres html.

Para isso:

foreach ($_POST as $key=>$valor) {

     $valor = eregi_replace("\\","",$valor);

     $this->dados[$key] = htmlspecialchars($valor);

}

[]’s Anselmo Battisti





Formatar moeda”valores monetários” em Javascript

8 03 2007

Importante Para Download e Demonstração Acesse

http://battisti.etc.br/projetos/

Saudações

Pessoal ai vão 3 funções bem legais para manipular valores monetários em javascript.

Continue lendo »





Frase do Dia

2 03 2007

Se Cabral usasse o IE para navegar ele nunca teria chegado até o Brasil.
Anselmo Battisti