Foros del Web » Programando para Internet » Jquery »

cambiar css por jquery

Estas en el tema de cambiar css por jquery en el foro de Jquery en Foros del Web. Buenas, tengo generado un PHP para cargar los datos de una BBDD y mediante un JQuery mostrar los diferentes DIVs. la linea que intento crear ...
  #1 (permalink)  
Antiguo 31/05/2011, 10:45
Avatar de crissrocca  
Fecha de Ingreso: febrero-2011
Mensajes: 51
Antigüedad: 13 años, 2 meses
Puntos: 1
cambiar css por jquery

Buenas, tengo generado un PHP para cargar los datos de una BBDD y mediante un JQuery mostrar los diferentes DIVs.

la linea que intento crear recogiendo el id a cambiar (mediante primera_id) es algo asi:
Código:
$('.col2 #col2-' + primera_id).css({display: block;});
segun un alert la ruta se muestra correctamete, pero no hace nada

y la funcion JQuery completa es:
Código:
<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>
la idea principal es mostra un DIV (col2 y col3) por defecto al abrir la pagina. actualmente la pagina se abre con todos en hide.
  #2 (permalink)  
Antiguo 31/05/2011, 12:38
 
Fecha de Ingreso: noviembre-2005
Mensajes: 426
Antigüedad: 18 años, 5 meses
Puntos: 87
Respuesta: cambiar css por jquery

Necesitaría verse el html generado, coloque "ver codigo" en la pagina y coloquelo aca
  #3 (permalink)  
Antiguo 31/05/2011, 16:34
Avatar de crissrocca  
Fecha de Ingreso: febrero-2011
Mensajes: 51
Antigüedad: 13 años, 2 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
  #4 (permalink)  
Antiguo 01/06/2011, 22:15
 
Fecha de Ingreso: noviembre-2005
Mensajes: 426
Antigüedad: 18 años, 5 meses
Puntos: 87
Respuesta: cambiar css por jquery

La verdad... no le entiendo casi nada... intente explicarse mejor.

Pero si lo que quiere hacer es disparar el evento click simplemente es asi:
Código Javascript:
Ver original
  1. $("#id_col").click()

Etiquetas: javascript
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:44.