Verhindern Sie, dass das Kontrollkästchen VOLLSTÄNDIG aktiviert / aktiviert wird

Ich wurde gebeten, das "Ankreuzen" eines Kontrollkästchens zu deaktivieren. Ich werde nicht darum gebetendeaktivieren das Kontrollkästchen, aber einfach das "Häkchen" zu deaktivieren.

Mit anderen Worten wird ein Benutzerdenken dass ein Kontrollkästchen ankreuzbar ist, ist es aber nicht. Wenn Sie stattdessen auf das Kontrollkästchen klicken, wird ein modales Dialogfeld angezeigt, in dem der Benutzer mehr Optionen zum Aktivieren oder Deaktivieren der durch das Kontrollkästchen dargestellten Funktion hat. Wenn die im Dialogfeld ausgewählten Optionen dazu führen, dass die Funktion aktiviert wird, wird das Kontrollkästchen aktiviert.

Nun ist das eigentliche Problem, dass für eineSekundenbruchteilkönnen Sie weiterhin sehen, dass das Kontrollkästchen aktiviert ist.

Ich habe einen Ansatz wie diesen ausprobiert:

<input type='checkbox' onclick='return false' onkeydown='return false' />

$('input[type="checkbox"]').click(function(event) {
    event.preventDefault();
    alert('Break');
});

Wenn Sie dies ausführen, wird die Warnung angezeigt, die anzeigt, dass das Häkchen sichtbar ist (die Warnung ist nur da, um zu demonstrieren, dass es in der Produktion immer noch angekreuzt wird, die Warnung ist nicht da). Bei einigen Benutzern mit langsameren Computern und / oder bei Browsern mit langsamen Renderern / Javascript kann ein sehr schwaches Flimmern auftreten (das Flimmern dauert manchmal eine halbe Sekunde, was sich bemerkbar macht).

Ein Tester in meinem Team hat dies als einen Defekt gekennzeichnet und ich soll ihn beheben. Ich bin nicht sicher, was ich sonst noch versuchen kann, um das Flackern des Häkchens in der Checkbox zu verhindern!

Antworten auf die Frage(9)

Ihre Antwort auf die Frage