load content

1. crias uma div antes da lista
2. ao clicar num item carregas o conteúdo do item por ajax/json e inseres o conteúdo na tal div
3. animas a abertura da div

abraço ;)
 
Não é um tutorial, mas deve ajudar: http://jsfiddle.net/2bjSw/

Basicamente o que fiz foi ao clicar em cada item fui buscar o "id" de onde cliquei.

Passo esse id na chamada de AJAX para saber o que retornar.
Neste caso a chamada de AJAX é fictícia e não retorna nada, por isso precisei de criar eu o HTML para lá meter, numa situação normal ele retorna-te o objecto data e usas a propriedade data.responseText para aceder ao HTML.

Injecto o HTML que recebo da chamada de AJAX num elemento que já estava no HTML (neste caso a <section>) e escondo-a para poder fazer a animação.
 
entretanto o código que arranjei só funciona com jquery 1.4.4
como posso meter compatível com o mais recente?

código

<script type="text/javascript">
$(document).ready(function(){
$('.more').live('click',function(){
var href = $(this).attr('href');
if ($('#ajax').is(':visible')) {
$('#ajax').css('display','block').animate({height:'1px'}).empty();
}
$('#ajax').css('display','block').animate({height:'200px'},function(){
$('#ajax').html('<img class="loader" src="img/loader.gif" alt="">');
$('#ajax').load('content.html #'+href,function(){
$('#ajax').hide().fadeIn().highlightFade({color:'rgb(253,253,175)'});
});
});
return true;
});
});
</script>
 
Back
Topo