¿Cómo puedo detectar cuándo se abre o cierra un elemento de detalles en Javascript? Aparte de conectar un oyente a la función de clic y verificar si el atributo de abrir está configurado o no.Detectando la apertura o el cierre de un elemento de detalles
Respuesta
Usted puede hacer algo como esto:
<details id="element">
<p>Details</p>
</details>
<script>
var isOpen = ($("#element").attr("open") == "open");
alert ("Open = " + isOpen);
</script>
Estoy buscando un evento que se dispara cuando el estado cambia de abierto a cerrado o viceversa. – rolisz
¿Hay algún motivo por el que no pueda usar el evento onclick? Siempre puedes probar el enlace en el evento 'DOMAttrModified'. En cualquier caso, el elemento 'details' es tan nuevo y no es compatible con muchos navegadores, por lo que es difícil decir cómo terminará trabajando en el futuro. –
Bueno, si estoy usando el evento onclick de lo que podría estar utilizando dos div en lugar de detalles y resumen. Solo son dos líneas adicionales de jQuery y no me preocupo por la compatibilidad entre navegadores. No sabía acerca de DOMAttrModified, pero no creo que esté funcionando en Chrome, y el elemento de detalle no funciona en ningún otro lugar excepto Chrome :))) – rolisz
Puede utilizar el toggle event:
var details = document.querySelector("details")
details.addEventListener("toggle", function() {
details.firstChild.textContent = "done"
})
<!doctype html>
<details>
<summary>toggle event</summary>
</details>
Es bueno saber que el evento de alternancia no parece burbujear (?), y que el atributo 'abrir' parece modificarse * antes * de que el evento se desactive. – commonpike
en jQuery
$("#detail-id").on("toggle", function() {
//code
});
- 1. Detectando el cierre de la conexión del cliente en node.js
- 2. Cómo convertir un elemento HTML en una cadena, incluidas las etiquetas de apertura y cierre?
- 3. cliente de memcached: apertura, cierre y reutilización de conexiones
- 4. Animar apertura/cierre de columnas de tabla en jQuery
- 5. Simple ASP.NET MVC CRUD vistas de apertura/cierre en el diálogo de la IU de JavaScript
- 6. Detectar el cierre y la apertura de la tapa del portátil
- 7. php echo vs etiqueta de apertura y cierre de
- 8. ¿Puede TextMate encontrar etiquetas de apertura y cierre coincidentes?
- 9. comentarios HTML dentro de la etiqueta de apertura del elemento
- 10. Detectando el estado de ánimo de un tweet o mensaje
- 11. Especifica que va de la propiedad entre la etiqueta de apertura y cierre en Xaml
- 12. ¿Cómo puedo obtener el elemento de apertura con jQuery?
- 13. En el "archivo de apertura y escritura" en línea, ¿está implícito el cierre()?
- 14. Prevenir la apertura de archivos dentro de NERDTree o MiniBuffExplorer
- 15. ¿Existen beneficios al seguir el principio de apertura/cierre cuando se usa BDD?
- 16. XmlReader - ¿Elemento de cierre automático no desencadena un evento EndElement?
- 17. cuadro de diálogo jQuery apertura/cierre mediante un efecto de transferencia
- 18. Detectando cuando un iframe obtiene o pierde el foco
- 19. ¿Cómo puedo rastrear el evento de apertura y cierre de NSWindow?
- 20. No se permite el contenido entre las etiquetas de apertura y cierre para el control de usuario
- 21. Detectando el uso activo de la cámara
- 22. Detectando el segmento interceptado de un UISegmentedControl
- 23. detectando el estado actual de un mouse en javascript o jquery, es decir, abajo o arriba
- 24. Detectando la primera ejecución de una aplicación
- 25. Detectando el desplazamiento de UITableView
- 26. Crear método de extensión para producir etiquetas de apertura y cierre como Html.BeginForm()
- 27. Apertura de un cuadro de información usando el patrón MVVM
- 28. ¿Cómo puedo usar pyparsing para analizar expresiones anidadas que tienen múltiples tipos de apertura/cierre?
- 29. Detectando la edición de JComboBox
- 30. apertura de un archivo en el modo de 'A +'
Did años ¿alguna vez encuentras una solución a esto? – Bryce