- ベストアンサー
jQueryのfocus,blurが機能しない?初心者が質問
- jQuery初心者がフォームのテキストの表示と入力時の挙動を調整するためにfocusとblurを使用していますが、うまくいっていません。
- class名が間違っている可能性があるため、class名を正しく設定するか確認してください。
- jQueryのコード内に不備がある可能性があります。コードを再確認して、正しく動作するように修正してください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 まず提示されたJavaScriptではエラーが発生しています。 次に最初からグレーにするのであればスタイルの設定はguidetextではなくというクラス名ではないでしょうか。 (JavaScriptにて追加しているクラス名がguideのため) また、guidetextであったりguideTextであったり大文字小文字のミスが多く見受けられます。 (クラス名やJavaScript内) (大文字小文字は区別されます) 見比べてみてください。 それを踏まえて直してみると ==== HTML inputまたはtextareaに class="guide" を設定 ==== CSS .guide { color:#999; } ==== JavaScript $(function(){ $('.guide').each(function(){ var guideText = this.defaultValue; var element = $(this); element.focus(function(){ if(element.val()===guideText){ element.val(''); element.removeClass('guide'); } }); element.blur(function(){ if(element.val()===''){ element.val(guideText); element.addClass('guide') } }); if ( element.val() === guideText ) { element.addClass('guide'); } }); });
お礼
上手くできました。ありがとうございます。お金払いたいぐらいです!! 本当にありがとうございました。