入力フィールドに透かしテキスト効果を実装する方法を示す簡単なjQueryの例です。

1.コードスニペット

電子メール入力フィールドとcss透かしクラス。

<style type="text/css">
    input.watermark { color: #999; }//light silver color
</style>

<label>Email : </lable>
<input id="email" type="text"/>

電子メールフィールドに透かし効果を適用するjQuery

$(document).ready(function() {

    var watermark = 'Puts your email address';

   //init, set watermark text and class
    $('#email').val(watermark).addClass('watermark');

   //if blur and no value inside, set watermark text and class again.
    $('#email').blur(function(){
        if ($(this).val().length == 0){
            $(this).val(watermark).addClass('watermark');
        }
    });

   //if focus and text is watermrk, set it to empty and remove the watermark class
    $('#email').focus(function(){
        if ($(this).val() == watermark){
            $(this).val('').removeClass('watermark');
        }
    });
});

デモ

完全なHTMLソースコード。

<html>
<head>
<title>jQuery and watermark example</title>

<script type="text/javascript" src="jquery-1.7.2.min.js"></script>

<style type="text/css">
    input.watermark { color: #999; }
    input {
        padding:4px;
        text-indent: 5px;
        width:200px;
        font-size:14px;
    }
</style>
</head>

<body>

<script type="text/javascript">
$(document).ready(function() {

    var watermark = 'Puts your email address';

   //init, set watermark text and class
    $('#email').val(watermark).addClass('watermark');

   //if blur and no value inside, set watermark text and class again.
    $('#email').blur(function(){
        if ($(this).val().length == 0){
            $(this).val(watermark).addClass('watermark');
        }
    });

   //if focus and text is watermrk, set it to empty and remove the watermark class
    $('#email').focus(function(){
        if ($(this).val() == watermark){
            $(this).val('').removeClass('watermark');
        }
    });
});

</script>

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-2836379775501347"
     data-ad-slot="8821506761"
     data-ad-format="auto"
     data-ad-region="mkyongregion"></ins>
<script>
(adsbygoogle = window.adsbygoogle ||[]).push({});
</script><h2>jQuery - Watermark on input text</h2>
<label>Email : </lable>
<input id="email" type="text"/>

</body>
</html>

結果。

ソースコードをダウンロードする

ダウンロードする – リンク://wp-content/uploads/2012/07/watermark-input.zip[jQuery-watermark-input.zip](1kb)