Primer: HTML チェックボックスを として設定できますindeterminate
。これは、チェックされているかチェックされていないかを表示します。この不確定な状態でも、基礎となるブールchecked
状態はまだ存在します。
不確定なチェックボックスをクリックすると、そのindeterminate
状態が失われます。ブラウザ (Firefox) によっては、さらにchecked
プロパティを切り替えることができます。
この jsfiddleは状況を示しています。Firefox では、チェックボックスのいずれかを 1 回クリックすると、最初の基本的なchecked
状態が切り替わります。IE では、checked
最初のクリックでプロパティがそのまま残ります。
これが追加の JavaScript を意味する場合でも、すべてのブラウザーが同じように動作することを望みます。残念ながら、ハンドラー(またはjquery ) が呼び出される前にindeterminate
プロパティが false に設定されるため、チェックボックスをクリックして呼び出されたかどうかを検出できません。onclick
onchange
change
indeterminate
mouseup
and (スペースバーのkeyup
トグル) イベントは以前のindeterminate
状態を示していますが、それほど具体的ではありません。壊れやすいようです。
チェックボックス(または同様のもの)で別のプロパティを維持することはできましたがdata-indeterminate
、欠けている簡単な解決策があるかどうか、および/または他の人が同様の問題を抱えているかどうかを知りたいと思いました。