-1

我想为 HTML input[type=text] 元素使用占位符属性,以便占位符文本在用户开始输入“之后”消失,而不是“onfocus”。类似于关键跟踪器上的登录页面:https ://www.pivotaltracker.com/signin

到目前为止,我还没有使用 placeholder 属性。相反,我在输入字段上使用了一个“onkeyup”事件,这样一旦用户键入第一个字符,它就会清空输入字段的内容。为此,我在 input 元素上设置了一个名为“data-received”的自定义属性,默认情况下为 false,并且在用户键入第一个字符后立即设置为 true。(这样它就不会继续清空该字段)。我可以通过在输入字段上“取消绑定”“keyup”方法来做类似的事情。

我对这种方法不太满意,我想知道是否有更好的方法来做到这一点?

4

3 回答 3

1

好的,我想通了。我也从 zendesk 网站获得了一些线索。首先,不使用占位符属性。标签与带有位置的输入字段一起使用:绝对。它与与其关联的输入字段重叠的位置。Javascript 用于跟踪 onkeyup 事件,一旦它看到输入字段的值不为空,它就会简单地隐藏关联的标签。如果您删除输入的任何内容,它会再次显示标签:)

于 2012-06-22T21:26:58.953 回答
0

查看:

使用该placeholder属性(如果不使用 JS),但请参阅上面的链接以跨浏览器方式执行此操作。

于 2012-06-19T18:49:12.887 回答
0

HTML5 有一个placeholder属性,但它可能不适用于所有浏览器。

使用 jQuery 修复的 HTML5 占位符输入字段有一个修复程序,可以在所有浏览器中使用。

执行此操作的 jQuery 插件

于 2012-06-19T18:49:54.397 回答