2011-01-19 12 views
14

私はいくつかのHTML5フォーム機能を使用して、Webプロジェクトのユーザーエクスペリエンスを徐々に強化しています。具体的にはオートフォーカスですが、これはユーザがタグを入力できるモーダル(ライトボックス)ダイアログでこれを使用したいと思います。既存のタグが存在する可能性があります。HTML5オートフォーカス=自動選択ですか?

私がインストールした唯一の自動フォーカス機能を搭載したブラウザはChrome 9ですが、テストすると、フォーカスがフィールドに置かれますが、フィールド内の既存のテキストもすべて自動的に選択されます。私は期待していなかったり、オートセレクトをしたい、私はオートフォーカスが欲しい。

私の予想が間違っているか、Chromeが間違っていますか?

+0

ここに記載されているアクセシビリティの問題に注意を払う価値があるhttp://webaim.org/blog/future-web-accessibility-html5-input-extensions/ –

答えて

6

はここにオートフォーカス、HTML5について詳しく読む:http://php.quicoto.com/autofocus-in-html5/

あなたは我々が見ることができるコードのスニペットを持っている場合は、我々はさらに助けになることができるかもしれません。 FxとIE以外のすべてでこの機能がサポートされているとは言え、実装はかなり簡単で痛みはないようです。

+0

スニペットは、単に含める例は意味がありますが、空のフィールドに関係しています。私が言ったように、フォーカスは機能し、フィールドにカーソルを置きますが、存在する場合は既存のテキストもすべて選択します。それは私が欲しい、または期待しているものではありません。 – Ferdy

+0

これで、既存のテキストの最後にカーソルを追加しようとしていますか?それが事実なら、それはオートフォーカスではなく、私の知識にはjavascriptが必要になるでしょう...それにもかかわらず、オートフォーカスはその仕事をしています。 Eliの言ったように、オートフォーカスが働いています。 jsを調べてみてください。申し訳ありませんが、もっと助けてもらいたいです。 –

+0

実際には、テキストの最初と最後のどちらに配置するかは気にしません。フィールドに焦点を合わせる必要があります。そのフィールドのすべてのテキストを選択すべきではありません。これは、ユーザーが入力を開始するときに既存の値を上書きすることを意味します。私はオートフォーカスが既存のテキストが自動的に選択されることを意味するはずだが、ねえ、もしそれが本当にスペックに従っているならば、そうだと私は同意しない。 – Ferdy

-2

input.focus()もこれを行うので、テキストを選択することになっています。

+3

input.select()はテキストを選択しますが、input.focus ()はちょうどフィールドをフォーカスする必要があります – Maxym

2

HTML5 specificationから、フォーカスのステップでは、テキストを選択する必要があるかどうかを指定しません。ユーザーエージェントは、テキストを選択する必要も、禁じられていません。具体的には次のようになります。focusing step

ユーザーエージェントは、ウィジェットにフォーカスするために関連するプラットフォーム固有の規則を適用することがあります。

注:たとえば、一部のプラットフォームでは、フィールドがフォーカスされているときにテキストフィールドの内容を選択します。

6

Chromeは、彼らが間違っていたことを決めたと私は私が間違っても、テキストを選択するためのJavaScript .focus()とhtmlのオートフォーカスに頼った。このため、知っているクローム36

でこの動作を変更しました。これで、.select()を選択してテキストフィールドにフォーカスする必要があります。現在、私たちは私たちが望むものに特化することができます:-)

だから、ChromeはChromeのように動作します。 Firefox。

+0

ありがとうございました! – Ferdy

関連する問題