And After - Design e Tecnologia por Sua Conta!
O desenvolvedor é um blog sobre desenvolvimento web, não tratando apenas de programação mas também compartilhando experiências, métodos, debates e tendências da internet.

O Desenvolvedor é um blog de www.andafter.org
Assinar o Feed RSS

Chris Benseler

[www]

Fotos sempre tiradas do lado direito do rosto. Que nem o Rei!
Viciado em web, trabalho com web. Javascript e (x)html são minha praia conhecida, e me arrisco com PHP e Java.
Na vida offline, futebol e música me distraem. E falar bobeiras com os amigos

Status
Karma: 16034
Opiniões: 30

Mais deste autor


Adicionar método de truncar texto em javascript a classe String

Adicionar método de truncar texto em javascript a classe String

Muito bomEste texto foi classificado como Muito bom
Em Internet, Programação
Por Chris Benseler
23 de Março de 2009

Adicionando método de truncar à classe String do javascript

RSS Acompanhe O Desenvolvedor por Feeds!


O Danilo (do Tidbits) aproveitou a idéia do Igor em fazer um truncate de strings no PHP e fez uma função no javascript para isso - você passa a string e o limite de caracteres, se o tamanho dela for maior do que esse limite, ela corta e coloca três pontos no final.

Resolvi usar essa função do Daniel para adicionar um método de truncar ao objeto String do javascript. Com isso, ao invés de chamar a função passando o texto e o limite de caracteres, é só chamar o método passando o limite:

minhaString.truncar(limite);

Vamos à implementação, já com o exemplo de uso:

<html>
<head>
    <title>Truncar - javascript</title>
    <script type="text/javascript">
        /*
        adaptação da função truncar() feita pelo Danilo do Tidbits,
        adicionando-a a classe String
        Função original: http://www.tidbits.com.br/truncar-texto-em-javascript-abreviar-sem-cortar-palavras
        */
        String.prototype.truncar = function(limite){
            if(!limite)
                throw "Limite não informado";
            if(this.toString().length>limite){
                limite--;
                last = texto.substr(limite-1,1);
                while(last!=" " && limite > 0){
                    limite--;
                    last = texto.substr(limite-1,1);
                }
                last = texto.substr(limite-2,1);
                if(last == "," || last == ";"  || last == ":"){
                     texto = texto.substr(0,limite-2) + "...";
                } else if(last == "." || last == "?" || last == "!"){
                     texto = texto.substr(0,limite-1);
                } else {
                     texto = texto.substr(0,limite-1) + "...";
                }
            }
            return texto;
        }


        var texto = "Meu texto";
        alert(texto.truncar(5));

    </script>
<body>
   
</body>
</head>
</html>

O que você achou do texto?

  • Muito ruim
  • Ruim
  • Regular
  • Bom
  • Muito bom
Sua opinião é o que faz a comunidade funcionar, colabore para isso!

Tags: javascript, truncate

Enviar para um amigo
Você pode comentar, assinar o feed, conhecer mais sobre o autor e ajudar a divulgar este artigo em sua ferramenta favorita através dos botões abaixo.
  • Rec6
  • ueba
  • linkk
  • dihitt
  • linkloko
  • websapiens
  • linkto
  • Eu curti

Comentários

Guilherme Serrano

23/4/2010 16:33:00

substr WIN! Recorro a este post quase toda a vez que preciso limitar caracteres com js... haha :D

[Responder este comentário]
Deixe seu comentário!

Nome (requerido)

E-mail (requerido - não será divulgado)

URL

Quanto é 2 + 5?




web tracker