次のスニペットがあります: http://jsfiddle.net/L7rne/5/およびhttp://jsfiddle.net/L7rne/6/
クリック イベント ハンドラでスクリプトの実行を一時停止すると、チェックボックスがあっても、チェックボックスがオンになることがわかりましたevent.preventDefault()
。
Firefox 7 と Chrome 15 でこれを試しましたが、どちらも同じように動作します。
私はそれが正しい動作であるとほぼ確信していますが、どういうわけかそのような理由を参照することはできません.
誰かが私を正しい方向に向けることができますか?
編集:
チェックされたチェックボックスから始めると、さらに興味深いものになります: http://jsfiddle.net/L7rne/8/ - チェックボックスはオフになりますが、その値はチェックされたままですhttp://jsfiddle.net/L7rne/9/ -チェックボックスはチェックされませんが、その値はfalseになります
checkbox.checked
(これは、 andを使用した純粋な Javascript コードと一致するcheckbox.getAttribute('checked')
ため、別の jsfiddle スニペットは貼り付けません)
EDIT2:
コメントの 1 つで COBOLdinosaur が私にこれを指摘しました: http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-flow-cancelation、しかし私見は私の見解を確認するだけです...