JQuery文本框水印插件的简单实现

  采用JQuery实现文本框的水印效果非常容易,效果如下:

   代码片段,定义要应用水印效果的文本框的样式:

.watermark { color: #cccccc; }

  将JavaScript代码封装成JQuery的插件:

(function ($) {
    $.fn.watermark = function (options) {
        var settings = $.extend({
            watermarkText: "Input something here",
            className: "watermark"
        }, options);

        return this.each(function () {
       if ($(this).val().length == 0 || $(this).val() == settings.watermarkText) {   
//init, set watermark text and class   $(this).val(settings.watermarkText).addClass(settings.className);
       }
//if blur and no value inside, set watermark text and class again. $(this).blur(function () { if ($(this).val().length == 0) { $(this).val(settings.watermarkText).addClass(settings.className); } }); //if focus and text is watermrk, set it to empty and remove the watermark class $(this).focus(function () { if ($(this).val() == settings.watermarkText) { $(this).val('').removeClass(settings.className); } }); }); } })(jQuery);

  接下来直接在页面上使用:

<div class="search_box">
    <input id="tb_search" type="text" />
</div>

<script type="text/javascript">
    $(document).ready(function () {
        $("#tb_search").watermark({
            watermarkText: "站内检索",
            className: "watermark",
        });
    });
</script>

  原文地址:http://www.mkyong.com/jquery/jquery-watermark-effect-on-text-input/

posted @ 2014-03-14 05:03  Jaxu  阅读(3459)  评论(2编辑  收藏  举报