inserir texto com opção "ver +"

luigi24

Power Member
Alguem tem uma ideia de como puxar o texto de uma bd e inseri-lo numa div com heigth definida.
A parte de puxar da bd ja sei, so nao tou a ver como inserir apenas o texto que couber dada a height definida.
Queria por a opção "ver+" para mostrar o resto se não couber todo (hehehe... :002:).
Falo de php atenção.
Thanks.
 
Código:
<script type="text/javascript">
    function mostrar(id){
        if (document.getElementById(id).style.display!="none") {
            document.getElementById(id).style.display="none";
            texto1.style.display="block";
        }else{
            document.getElementById(id).style.display="block";
            texto1.style.display="none";
        }
    }
</script>

<div id="texto1">Texto 1</div>
<div id="texto2" style="display:none;">Texto 2</div>
<a href="#" onClick="mostrar('texto2');">ver mais</a>

Basicamente tens 2 divs, uma com o texto mais pequeno e outra com o texto todo, ao clicares no "ver mais" ele mostra o texto maior e esconde o mais pequeno.
 
agradeço a prontidao.
ja tou a ver a manha. Falta me saber uma parte.
O texto é puxado da bd "on load".
Mas para inserir na div "texto1" apenas o que couber, a melhor forma é limitar o numero de caracteres na query de sql?
Dois scripts php difs talvez, com duas querys de sql. uma que saca apenas algum texto para o "texto1", outra que puxa o texto todo para a div "texto2".
 
Última edição:
Não há nenhuma função de PHP que seleccione um certo número de caracteres de uma variável a contar da esquerda para a direita? Em ASP sei que há e era isso que eu usava.
Ia buscar o texto todo e metia-o numa var1, depois igualava var2 aos 40 primeiros caracteres da var1.
 
em php da pra contar palavras dentro de uma string mas nao existe uma classe para isso. é preciso depois contornar os possiveis erros
Mas essa de criar 2 variaveis é a solução.
Tendo em conta que estou a usar ajax para inserir o texto na div, posso inserir o resultado do request em duas variaveis como disseste e depois fazer o que quiser delas.

Man, muito muito obrigado!!!
 
Se o Div tiver altura constante, podes fazer uma regra CSS deste tipo:

div.nome
{
height: 400px /* por exemplo */
overflow: auto
}

assim, quando o texto for "mais alto" que o div, aparece uma scrollbar para poderes ver o texto que falta
 
Back
Topo