テキストフィールド (onfocus/onblur) に出入りするための JavaScript を作成しようとしています。フィールドに入ると消える「事前に入力された」テキストを色あせさせたいです。問題は、テキスト ボックスの値を削除する必要があるかどうかをテストすることです。1 つの方法は、入力時にテキストフィールドの値をチェックすることです。それが事前に入力されたテキストと等しい場合、値は次のように何も設定されません。
if(field.value=='username'){
field.value=''; //removes pretyped text
field.style.color='rgb(0, 0, 0,)'; //turns text black
}
ただし、ユーザーは事前に入力されたテキストを複製することができ、そのテキストを入力すると、それも削除されます。これは小さな問題だと思いますが、できる限りプロになりたいと思っています。この問題を解決するために、テキスト フィールドのテキストの色をテストしてみました。ユーザーはグレーの事前入力テキストの色を再現できないためです。私はこのコードを使用しました:
if(field.style.color=='rgb(150, 150, 150)'){ //default color in CSS
field.value=''; //removes pretyped text
field.style.color='rgb(0, 0, 0,)'; //turns text black
}
これは何らかの理由で機能しません。事前に入力されたテキストは残り、色は変わりません。CSS の色にアクセスするための構文 (field.style.color) は正しいと確信しています。これは、色を黒に設定するために機能するためです (ただし、フィールドの値をテストする場合のみ)。
どんな助けでも大歓迎です:)
編集:実際のコードに余分なコンマはありません。