子要素の focusout で div を非表示にしたい。たとえば、
ユーザー名とパスワードのフィールドを div に入れることができます。最初は最小化されます。ユーザーがクリックすると div が開き、ユーザーが div の外側の任意の場所をクリックすると、div が閉じます。mydiv
<body>
<div id="mydiv" onblur="alert('hi');" tabindex="1" style="border: 1px solid black;">click off me to activate onblur
<br/>
username: <input type="text" name="username" onblur="alert('hi');" tabindex="1" />
<br/>
Password: <input type="text" name="password" />
</div>
</body>
(JS フィドルを参照してください: http://jsfiddle.net/vC7Rb/1/ )
div とテキスト フィールドの両方に onblur を配置しようとしましたが、共通の関数呼び出しが必要で、そこから要素のいずれかにまだフォーカスがあるかどうかを確認し、div のみを非表示にする必要があります。これを行う方法。
これを純粋な JavaScript コードで実装したいのですが、すべてのブラウザー (IE、Firefox、Chrome) で互換性があるはずです。