Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problemas .click

Estas en el tema de Problemas .click en el foro de Frameworks JS en Foros del Web. Hola buenas tardes. Tengo un problema con jquery que no entiendo muy bien a que se debe. Intentaré explicarlo lo mejor que pueda. Cuando le ...
  #1 (permalink)  
Antiguo 30/11/2011, 10:08
 
Fecha de Ingreso: noviembre-2011
Ubicación: Barcelona
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
Problemas .click

Hola buenas tardes.
Tengo un problema con jquery que no entiendo muy bien a que se debe. Intentaré explicarlo lo mejor que pueda.

Cuando le doy al <li class="openDesc"> hace todo lo que sale a continuación.....

Código:
var pos;
var cont = 0;
$j(".openDesc").click(function () {	
	pos = 0;
	var div = $j(this).next().html();//Obtenemos los datos HTML del siguiente elemento seleccionado
	$j("#textDesc").html(div);//Cargamos en contenido en el "desc"
	Cufon.replace('p');
	$j(".desc").slideDown("slow");//Abrimos el div de openDesc
		
	$j(".back").css("visibility", "visible");//En el momento que clicamos sobre uno de los proyectos las clases pasan a ser "visible" 
	$j(".forward").css("visibility", "visible");
	$j(".backDIV").css("visibility", "visible");
	$j(".forwardDIV").css("visibility", "visible");
	/*$j(".bullets").css("visibility", "visible");*/
		
	id = $j(this).attr('id');//Obtenemos la id del elemento seleccionado
	$j.ajax({
			type: "POST",
			url: "./index?a=data",
			data: "id="+id,//concatenamos la id
			dataType: "json",
			success: function(data) {
				d = new Array();
				//cont = 0;
				for(name in data){
					d.push({
						key: name,
						value: data[name]
					});
				//cont++;
			}
			if(Object.keys(d).length > 0){
				//console.log(d[0]["value"]);
				console.log(cont);
				$j("#jq_ez_bg img").fadeOut('slow', function() {
					$j("#jq_ez_bg img").attr('src','img/galleryprojects/'+d[0]["value"]);//mostramos la primera imagen del proyecto seleccionado
				});
				$j("#jq_ez_bg img").fadeIn('slow');
			}
			$j(".bulletsDIV").html('<img class="bullets" id="0" src="./img/bullets.png" />');
			for(i = 1; i < Object.keys(d).length; i++)
			{
				$j(".bulletsDIV").append('<img class="bullets" id="'+i+'" src="./img/bullets2.png" />');
			}
		}
	});
});
La parte que esta en rojo lo que hace es que según el número de imágenes que haya me ponga mas "bullets" o menos dentro del siguiente div:

Código:
<?php
echo '<div class="bulletsDIV"></div>';
?>
Hasta aquí todo bien.
Ahora lo que quiero hacer es poder ir cambiando las imágenes desde los "bullets" que he generado previamente.
Mediante la siguiente función, si consiguiese entrar, debería ir cambiando pero el problema es que no sabe quien es "bullets" por lo que nunca entra a la función.

Código:
$j(".bullets").click(function () {
    $j(".bullets").attr('src','./img/bullets2.png');
    $j(this).attr('src','./img/bullets.png');
    $j("#jq_ez_bg img").attr('src','img/galleryprojects/'+d[this.attr(id)]["value"]);
});
Mirando con el firebug me genera todo bien, es decir si hay class="bullets":

Código:
<div class="bulletsDIV">
    <img id="0" class="bullets" src="./img/bullets.png">
    <img id="1" class="bullets" src="./img/bullets2.png">
    <img id="2" class="bullets" src="./img/bullets2.png">
    <img id="3" class="bullets" src="./img/bullets2.png">
</div>
Pero no hay manera de hacer click sobre la class="bullets". No la reconoce pero según el firebug si existe.......

Si las imágenes las incrusto manualmente dentro de,
Código:
<?php
echo '<div class="bulletsDIV"></div>';
?>
si puedo hacer click sobre class="bullets" pero al generarlas así no hay manera

Ideas?

Gracias.
  #2 (permalink)  
Antiguo 30/11/2011, 11:45
 
Fecha de Ingreso: noviembre-2011
Ubicación: Barcelona
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas .click

35 visitas ni una respuesta....
Pregunta mal planteada o no se entiende?
Nadie se lo ocurre el porqué?

Gracias!!
  #3 (permalink)  
Antiguo 30/11/2011, 12:02
 
Fecha de Ingreso: diciembre-2010
Ubicación: valencia
Mensajes: 203
Antigüedad: 14 años
Puntos: 11
Respuesta: Problemas .click

no hay codigo para ver/probar posibles errores.
  #4 (permalink)  
Antiguo 30/11/2011, 13:16
 
Fecha de Ingreso: noviembre-2011
Ubicación: Barcelona
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
Respuesta: Problemas .click

Solucionado por hOpEx!!!

Prueba usando:
$(".bullets").live("click", function(){ alert("click"); });


Funciona!!

Etiquetas: ajax, html, jquery, js, php
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 09:19.