Estoy tratando de escribir una macro de usuario de Confluence que marcará todas las tareas en la página actual como completas. Sin embargo, no puedo encontrar el objeto correcto para simular el evento de clic. Simular un clic en <ul> o <li> no funciona, ya que la casilla de verificación en sí es solo una imagen de fondo. ¿Es de alguna manera posible apuntar a esa imagen con js?
Esto es lo que tengo hasta ahora (si hago clic aquí, no pasa nada):
## Macro title: Check All Tasks ## Macro has a body: N ## Date created: 2022-07-08 ## Installed by: R. ## @noparams <a id="toggleAll" href="#">Check all tasks</a> <script type="text/javascript"> AJS.toInit(function () { AJS.$('#toggleAll').click(function() { // first try jQuery('[role="checkbox"]').each(function(){ jQuery(this).trigger("click");}) // another try with querySelector document.querySelectorAll('[role="checkbox"]').forEach(function (el){ el.click();}); }); }); </script>Y aquí está el html/css relevante de una tarea típica:
<td><ul class="inline-task-list" data-inline-tasks-content-id="122741856" role="group"> <li data-inline-task-id="2" role="checkbox" aria-checked="false" class=""> <span class="placeholder-inline-tasks">My Task</span> </li></ul></td> ul.inline-task-list>li { background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxyZWN0IGlkPSJhIiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHJ4PSIyIi8+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHVzZSBmaWxsPSIjRkFGQkZDIiB4bGluazpocmVmPSIjYSIvPjxyZWN0IHN0cm9rZT0iI0E1QURCQSIgeD0iLjUiIHk9Ii41IiB3aWR0aD0iMTMiIGhlaWdodD0iMTMiIHJ4PSIyIi8+PC9nPjwvc3ZnPg==); }