lujoso
$('body').on('click', '.anything', function() {
//code
});
no funciona para nada en este momento y no puedo entender por qué. Puedo anclarme a cualquier otra cosa, digamos que solo lanzo un #wrap
div justo dentro del body
. Entonces soy capaz de hacer
$('#wrap').on('click', '.anything', function() {
//code
});
para cualquier elemento que quiera.
¿Alguna idea de lo que podría haber hecho para desactivar esta habilidad en el elemento del cuerpo?
¡Gracias!
¿Ha sido útil esta solución?
Tu feedback nos ayuda a saber si la solución es correcta y está funcionando. De esta manera podemos revisar y corregir el contenido.
tienes un
event.stopPropagation()
oreturn false
en un controlador de clic entre el elemento en el que está haciendo clic y elbody
¿elemento?–David Tomás
12 de agosto de 2012 a las 10:21
No puedo reproducir. ¿Podrías configurar un jsfiddle.net ¿manifestación? Debe estar sucediendo algo en su página que no está incluido en la pregunta.
– pimvdb
12 de agosto de 2012 a las 10:45
Entonces, ¿quiere hacer que alguna función relacionada con el evento de clic en el cuerpo no sea aplicable/no esté disponible para algún
– Alfredo
12 de agosto de 2012 a las 10:54
@pimvdb sabe que no es reproducible. Necesita ayuda para averiguar dónde buscar estadísticas, parte de una base de código más grande.
– lujoso
12 de agosto de 2012 a las 10:58
Intenta reemplazar
body
en el selector conhtml
odocument
(sin comillas), y ver si eso resuelve el problema?– adeneo
12/08/2012 a las 12:00
Syed Arif Iqbal
Deberías usar
$(document)
. Es un activador de función para cualquier evento de clic en el documento. Luego dentro puedes usar el jqueryon("click","body *",somefunction)
, donde el segundo argumento especifica a qué elemento específico apuntar. En este caso todos los elementos del interior de la carrocería.Considere editar su publicación para agregar más explicaciones sobre lo que hace su código y por qué resolverá el problema. Una respuesta que en su mayoría solo contiene código (incluso si está funcionando) generalmente no ayudará al OP a comprender su problema. También se recomienda que no publique una respuesta si es solo una suposición. Una buena respuesta tendrá una razón plausible de por qué podría resolver el problema del OP.
– SuperBiasedMan
18 de agosto de 2015 a las 8:56
@SuperBiasedMan gracias por corregirme. No explico mucho porque no soy hablante nativo de inglés y mi inglés no es bueno. pero hice mi mejor esfuerzo.
–Syed Arif Iqbal
18 de agosto de 2015 a las 9:09
Entiendo, edité el inglés en tu publicación para que sea un poco más claro ahora. Por lo general, las personas editarán las publicaciones para mejorarlas de esa manera, así que lo animo a que explique el código, incluso si está preocupado por la calidad de su inglés.
– SuperBiasedMan
18 de agosto de 2015 a las 9:27
Muchas gracias @SuperBiasedMan
–Syed Arif Iqbal
18 de agosto de 2015 a las 9:29
Puedes probar esto:
Debes seguir el siguiente formato
*Código JQuery*
@fancy parece haberse olvidado de responder a su pregunta. Por favor, eche un vistazo de cerca a mi solución. Puede que me sea útil.
– Cogigante
8 de enero de 2013 a las 6:08
Lemex
Si desea capturar, haga clic en todo y luego haga
Yo uso esto para el selector: http://api.jquery.com/all-selector/
Esto se utiliza para gestionar los clics: http://api.jquery.com/click/
y luego usar http://api.jquery.com/event.preventDefault/
Para detener las acciones de clic normales.
Esto agrega un controlador a cada elemento en el DOM, lo cual es pesado para el navegador.
– Joseph
12 de agosto de 2012 a las 11:31
Además de lo que dijo Joseph, el código de ejemplo en la pregunta (si no fuera por el problema misterioso) llamaría al controlador solo cuando el elemento en el que se hizo clic coincida con el
'.anything'
selector. Con respecto a su comentario “y no se ha dicho el móvil”, si se trata de un sitio web público, se accederá desde dispositivos móviles; el OP no debería necesitar explicarlo explícitamente.– nnnnnn
12 de agosto de 2012 a las 11:32
Además, si un elemento tiene 10 niveles de profundidad, dado que ese código está adjunto a todos elementos, se dispara 10 veces, una para el elemento y 9 para sus padres?
– Joseph
12 de agosto de 2012 a las 13:09