select要素がその値を変更するたびに実行する機能を設定しています。通常のonchangeイベントを使用する代わりに、300ミリ秒ごとに実行され、変更された値を検出した場合にのみハンドラーを呼び出します。Form.Element.Observer
これがあなたにとって何か意味があるのなら、私はプロトタイプを使用しています。
現在、Firefoxでは、ユーザーがにカーソルをoption
合わせて時限値チェック関数が起動すると、ブラウザーが値が変更されたと通知するため、ハンドラーが呼び出されます。私がやりたいのは、オプションにカーソルを合わせるだけでなく、ユーザーが実際にオプションを選択したことを検出できるようにすることです。プロトタイプのドキュメントで、彼らはこのバグ(またはあなたの見方によっては機能)を明示的に指摘していることを認識していますが、動作を正規化できるようにしたいと思います。
ある意味、これは以前にStackOverflowで見た質問( HTMLのselect要素が展開されているかどうかを検出する(手動で状態を追跡することなく) )に似ていますが、誰かがその方法を教えてくれることを望んでいましたこれは、特定の選択要素に対してのみ、展開ではなく閉じられた場合に発生します。
私が何を意味するのかをよりよく理解するには、http://jsfiddle.net/KxQd6/をチェックして、select要素をいじり、コンソールログをチェックしてください。