Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

138
Vistas
Switch slider (using a checkbox) is flickering with AJAX "back" history

The following code queries a state.json file on load and updates the slider switch. It uses fetch(...). It works.

When clicking on the text "Click on this text...", the top div is replaced by another text with HTMX.

Problem: when clicking browser "Back" button, the switch slider moves again (flickering), and it should not: only the div #me should be modified by HTMX, not the rest.

Question: how to avoid the switch to flicker when doing history Back? (even if we remove the CSS transition, we still have a very fast flickering).

Live demo here.

index.php

<script src="https://unpkg.com/htmx.org@1.8.0"></script>
<style>
.switch { appearance: none; height: 30px; width: 52px; background-image: linear-gradient(to bottom, transparent 0 22px, dodgerBlue 22px), linear-gradient(to right, white 0 22px, dodgerBlue 22px 60px); background-position: 4px 4px; }
.switch { transition: 0.2s; }
.switch:checked { background-position: 26px 4px; }
</style>
<div hx-get="page2.txt" hx-push-url="true" id="me">Click on this text to go to next page</div>
<input type="checkbox" id="checkbox" class="switch">
<script>
fetch("state.json").then(r => r.json()).then(data => {
    document.getElementById("checkbox").checked = data['state'] == 'checked';
});
</script>

page2.txt

Hello, now click on the "Back" history button of your browser.

state.json

{"state": "checked"}
about 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda