我们进行了一项调查,其中某些网页有单个textarea问题。由于它是唯一的输入,我们希望它专注于那个盒子上载。但是我们也希望在同一个文本区域中有一个占位符风格的文本。
有很多解决方案可以使这两种功能适用于所有浏览器,例如this one by Ajaxblender。但我希望提示在焦点后保留,然后在输入文本时消失。有什么想法吗?
注意 - 我意识到HTML规范声明占位符元素应该在焦点上消失。所以也许我应该说我想要一个“水印”。此UI适用于计算机知识水平较低的老年人 - 他们需要我们提供的任何帮助。
必须使用IE8 :(
答案 0 :(得分:4)
如果我理解了这个问题,你可以试试
<强> HTML 强>
<textarea id="first">Instructions go here</textarea>
<强>的jQuery 强>
$('#first').focus().one('keydown', function(){
$(this).val('');
});
示例:http://jsfiddle.net/jasongennaro/AYRyH/
<强>解释强>
.focus()
将焦点放在onload上的字段上。.one()
为元素keydown
我们删除当前值,这是我们在开头添加的说明。 鉴于你的评论
我需要它更像标准占位符 但是,如果您输入内容,则将其删除,以便字段为 空白,它会返回显示原始提示。
您可以执行此操作...捕获value
,然后将其放回textarea
blur
上,如果没有任何内容。
var a = $('#first').val();
$('#first').focus().one('keydown', function(){
$(this).val('');
});
$('#first').blur(function(){
if($(this).val() == ''){
$(this).val(a);
}
})