divにfocus/blurイベントハンドラを与えると、いつハンドラがいつ実行されますか?divのボケやフォーカスを作成する方法はありますか?
2
A
答えて
0
div要素にtabindex属性を指定すると、(HTML 5の下書きをサポートするブラウザで)フォーカス可能になります。理論的には、フォーカスとブラーイベントが発生します。
一般的に言えば、それはしないでください。
4
あなたはdiv
にtabindex
属性を与えると、フォーカスを受け入れることができるようになります:
<div id="example" tabindex="0">Random content</div>
通常どおりにあなたが、その後focus
とblur
イベントハンドラを添付することができます。たとえば:あなたはそれをクリックしたときに
document.getElementById("example").onfocus = function() {
console.log("focused");
}
フォーカスがdiv
に与えられます、そしてあなたが他の要素をクリックしたときblur
がトリガされます。
私はこのハックなしでこの問題を解決できません:http://stackoverflow.com/questions/6745059/implementation-details-of-date-picker-at-http-jqueryui-com-demos-datepicker – Krewr
はいあなたはできる。カレンダーまたは入力のいずれかの要素がフォーカスを取得したときに変数を設定します。いずれかがフォーカスを失ったときに設定を解除します。 1秒後にカレンダーを閉じ、変数が設定されていない場合にのみ、カレンダーを閉じます。私は、ボタンがアクティブになっている場合にのみ、カレンダーをトリガーすることで問題を回避できます。私はちょうどそれを入力することができますときにGUIを使用して日付を選択することは迷惑です。 – Quentin