0

我创建了一个像这样的表单域:

<p>
<label for="your-name" style="display: block; ">Your name</label>
<span>
<input type="text" name="your-name" value="" class="" size="40">
</span>
</p>

此代码无法更改。我已经将标签绝对定位在字段上,并且当我将鼠标悬停在字段上时,我已经应用了 jQuery 来隐藏它,如下所示:

jQuery('form p').hover(
   function() {
        jQuery(this).find("label").hide();
   },
   function() {
        jQuery(this).find("label").show();    
    }
);

但是,这仅在鼠标悬停在字段上时有效。如果在字段中输入并悬停,有没有办法隐藏标签?

谢谢罗伯特

4

2 回答 2

1

那是一种非常混乱的方式..这就是我要做的事情:

HTML:

<input type="text" name="your-name" id="your_name" value="Your Name" class="" size="40">

jQuery:

$('#your_name').focus(function(){
  if ($(this).val() == 'Your Name'){
      $(this).val('');
  }
}).blur(function(){
  if ($(this).val() == ''){
      $(this).val('Your Name');
  }
});

或使用詹姆斯提到的占位符

于 2012-09-25T22:41:59.220 回答
0

如果你想使用你现有的方法,你可以这样做:

演示:http: //jsfiddle.net/SLjMn/

于 2012-09-25T22:42:37.793 回答