我正在使用一些HTML5表单功能来逐步增强我的Web项目的用户体验。其中一个特别是自动对焦,我想在一个允许用户输入标签的模态(灯箱)对话框中使用它。现有标签可以在那里。
我安装的唯一支持自动对焦的浏览器是Chrome 9,但是当我在那里测试时,它确实将焦点放在字段上,但也会自动选择字段中的所有现有文本。我没想到或想要自动选择,我想要自动对焦。
我的期望是错误还是Chrome错误?
答案 0 :(得分:6)
在此处详细了解自动对焦和html5:http://php.quicoto.com/autofocus-in-html5/
如果您有我们可以查看的代码片段,我们可能会进一步提供帮助。它实现起来相当简单和轻松,并表示除了Fx和IE之外的所有功能都支持该功能。
答案 1 :(得分:6)
Chrome确定他们错了,并在Chrome 36中更改了此行为。
我知道这是因为我错误地依赖于javascript .focus()和html自动对焦来选择文本。现在它需要.select()来选择并聚焦在文本字段中。很好,我们现在可以具体说明我们想要的东西: - )
所以现在Chrome表现得像Firefox浏览器。
答案 2 :(得分:2)
从HTML5 specification开始,重点步骤不规定是否应选择文字。用户代理既不需要也不被禁止选择文本。具体来说,这是相关的focusing step:
用户代理可以应用相关的平台特定约定来聚焦小部件。
注意:例如,某些平台会在该字段聚焦时选择文本字段的内容。
答案 3 :(得分:-2)
应该选择文本,因为input.focus()
也这样做。