Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/05/2011, 16:34
Avatar de crissrocca
crissrocca
 
Fecha de Ingreso: febrero-2011
Mensajes: 51
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: cambiar css por jquery

ahora mismo no tengo el php por aqui, pero lo resumo brevemente.

Código:
<?php

//en esta parte llamo a conexion.php y genero la query

//pinto un for con una serie de campos
?>
<div class="col1">
   <?=$resultado['title']; ?>
   <?=$resultado['introtext']; ?>
</div>
<?php
//fin del for

//capturo el primer ID del for y lo incluyo en la siguiente sentencia
echo "<script>";
echo "var primer_id =".$resultado_id;
echo "</script>";

//genero otro for y pinto un segundo DIV
?>
<div class="col2">
   <?=$resultado['totaltext']; ?>
   <?=$resultado['footertext']; ?>
</div>
<?php
//fin del for
?>

<!-- ahora la variable primer_id puede ser llamada desde el script y contiene el primer ID de la query, por ejemplo '14' -->

<script type='text/javascript'>
$(document).ready(function() {

$('.col2').hide();
$('.col3').hide();
$('.col3 span').hide();

$("#col1 li").click(function() {
	//alert($(this).attr("id"));
	$('.col2').hide();
	$('.col3').hide();
	$('.col3 span').hide();
    var value = $(this).attr("id");
    var theDiv = $("#col2-" + value);
    theDiv.slideDown();
	col1ID=value;
});

$(".col2 li").click(function() {
	$('.col3').hide();
	$('.col3 span').hide();
    var value = $(this).attr("id");
    var theDiv = $("#col3-" + col1ID);
    var theDiv2 = $("#col3-" + col1ID +" #detalle"+value);
	//alert("#col3-" + col1ID +" #detalle"+value);
    theDiv.slideDown();
    theDiv2.slideDown();
});

});
</script>
actualmente funciona bien, cuando se hace click en un elemento del primer bloque, segun su id se abre su #col2-id y al pinchar en este se abre su #col3-id.

la idea es cambiar estos .hide(); por algo que muestre ese primer_id y oculte el resto. luego segun se haga click, el hide y show se comportara como funciona ahora mismo.

como esta ahora mismo todos los div contiene lo siguiente:
Código:
<div id="col1"></div>
<div id="col2<?=$resultado_id; ?>" class="col2" ></div>
<div id="col3<?=$resultado_id; ?>" class="col3" ></div>
como puedes ver se añade el $resultado_id para crear la variable que indica al jquery que elemento se abre segun se hace click. necesitario algo para llamar a ese click con el valor del primer id o generar una funcion que consulte si no ahi nada seleccionado, selecciona el primer id... algo asi