2012-01-13 14 views
5

Sono in attesa di un semplice interruttore a scorrimento per un collegamento di ulteriori informazioni, quindi quando viene espanso un link di lettura inferiore.jQuery: Ulteriori informazioni/Riduci diapositiva?

Esattamente come this ma ha bisogno di scorrere verso il basso anziché solo apparire così.

L'altezza iniziale deve essere impostata o tramite parole o altezza del riquadro.

Qualche idea, è abbastanza semplice da raggiungere?

Grazie per qualsiasi aiuto :)

+2

Perché non provare a seguire il tutorial che hai collegato e modificare toggle() di slideToggle()? – Miquel

risposta

0

L'esempio utilizzare la funzione di commutazione(), che mostra solo o nasconde l'elemento hai citato (display: block/nascosto) senza qualsiasi effetto

Devi usare la funzione slideToggle(), che fa la stessa cosa, ma con effetto scorrevole.

$("button").click(function(){ 
    $("p").slideToggle(); 
}); 
+0

Grazie ragazzi, ho bisogno di 'leggere di più' per passare a 'leggere di meno' ho trovato alcuni esempi di click slide su e giù, ma ho bisogno che cambi davvero. – Jezthomp

0

si potrebbe usare jQuery del costruito nelle funzioni di .slide() o animare()

così invece di utilizzare:

$('#someElement').html('some content'); 

provare

$('#someElement').html('some content').slideDown(some speed ie 600); 

faresti è necessario nascondere (cioè visualizzare: nessuno) prima l'area del contenuto. forse avvolgere il contenuto in un div con id/class e impostare quello da visualizzare: none

3

In ritardo ma mai, trovo che questo plugin sia molto utile. Ha tonnellate di grandi opzioni e molto flessibile

http://plugins.learningjquery.com/expander/

+0

Se il testo supera più di una riga, vi è un'interruzione di riga prima del testo "più". Cattivo. – oyvey

4

E 'semplice, ma efficace.

$(".button").click(function(){ 
    var moreAndLess = $("p").is(':visible') ? 'More' : 'Less'; 
    $(this).text(moreAndLess); 

    $("p").slideToggle(); 
});