Мне было предложено отключить "тиканье" флажка. Я не прошу отключить этот флажок, но просто отключить "тиканье".
Другими словами, пользователь будет считать, что флажок доступен, но это не так. Вместо этого, нажав на этот флажок, появится модальный диалог, предоставляющий пользователю дополнительные параметры для включения или выключения функции, которую представляет флажок. Если параметры, выбранные в диалоговом окне, вызывают включение функции, установите флажок.
Теперь реальная проблема заключается в том, что в течение секунды секунды вы все еще можете видеть, что флажок отмечен.
Я пробовал такой подход:
<input type='checkbox' onclick='return false' onkeydown='return false' />
$('input[type="checkbox"]').click(function(event) {
event.preventDefault();
alert('Break');
});
Если вы запустите это, появится предупреждение, показывающее, что галочка видна (предупреждение есть только для того, чтобы продемонстрировать, что он по-прежнему галочки, на производстве, предупреждения там нет). У некоторых пользователей с более медленными машинами и/или в браузерах с медленными рендерами /javascript пользователи могут видеть очень слабое мерцание (мерцание иногда длится полсекунды, что заметно).
Тестер в моей команде отметил это как дефект, и я должен его исправить. Я не уверен, что еще я могу попытаться предотвратить мерцание флажка!