-1

HTML input [type = text]要素のプレースホルダー属性を使用して、ユーザーが「onfocus」ではなく「ユーザーが入力を開始した後」にプレースホルダーテキストが消えるようにします。ピボットトラッカーのサインインページのようなもの:https ://www.pivotaltracker.com/signin

これまで、プレースホルダー属性は使用していません。代わりに、ユーザーが最初の文字を入力するとすぐに入力フィールドの内容を空にするように、入力フィールドで「onkeyup」イベントを使用しました。これを行うために、「data-received」という入力要素にカスタム属性を設定しました。これはデフォルトではfalseであり、ユーザーが最初の文字を入力するとすぐにtrueに設定されます。(フィールドを空にし続けないようにするため)。入力フィールドの「keyup」メソッドを「バインド解除」することで、同様のことができます。

私はこの方法にあまり満足していません、そして私はこれを行うためのより良い方法があるかどうか疑問に思いましたか?

4

3 に答える 3

1

私はこれを理解しました。zendesk サイトからもヒントを得ました。まず、プレースホルダー属性は使用されません。ラベルは、position: absolute の入力フィールドと共に使用されます。関連付けられた入力フィールドと重なる位置。Javascript を使用して onkeyup イベントを追跡し、入力フィールドの値が空でないことを確認するとすぐに、関連するラベルを非表示にします。入力したものを削除すると、ラベルが再び表示されます:)

于 2012-06-22T21:26:58.953 に答える
0

チェックアウト:

属性が使用されplaceholderます (JS を使用しない場合) が、上記のリンクを参照して、クロス ブラウザーの方法でそれを行います。

于 2012-06-19T18:49:12.887 に答える
0

HTML5 にはplaceholder属性がありますが、すべてのブラウザーで機能するとは限りません。

jQuery で修正された HTML5 プレースホルダー入力フィールドには、すべてのブラウザーで機能する修正が含まれています。

これを行うjQueryプラグイン

于 2012-06-19T18:49:54.397 に答える