クリックすると入力ボックスに変わり、フォーカスするdivを作成しようとしています。これを実現するためにプロトタイプを使用しています。これは Chrome と Firefox の両方で機能しますが、IE では機能しません。IE は、1 秒のタイムアウトを設定しても、新しく追加された入力フィールドにフォーカスすることを拒否します。
基本的に、コードは次のように機能します。
var viewElement = new Element("div").update("text");
var editElement = new Element("input", {"type":"text"});
root.update(viewElement);
// pseudo shortcut for the sake of information:
viewElementOnClick = function(event) {
root.update(editElement);
editElement.focus();
}
上記の例は、実際のコードの短縮版です。実際のコードは、IE のフォーカス ビットを除いて正常に動作します。
IE のフォーカス機能に制限はありますか? 入力をフォームに配置する必要がありますか?