【发布时间】:2010-06-24 06:35:49
【问题描述】:
我的网页中有一个文本输入字段,用于收集日期(通过 jQuery 工具 .dateinput)。用户不需要能够在该字段中键入。单击该字段时会出现一个对话框。这是我的 Motorola Droid 的一个问题,因为我不希望在单击该字段时出现软键盘。
我尝试过 input.blur() 聚焦,并将该字段设置为禁用和只读。将该字段设置为禁用会产生不希望的副作用。将该字段设置为只读适用于除 Android 浏览器之外的所有设备。浏览器似乎识别出“只读”属性(或通过 javascript 只读),但该字段实际上并未变为只读。当您单击它时,软键盘仍会出现并允许您更改字段。
我想这是 Android 浏览器中的一个错误。谁能想出一个聪明的替代方案?
【问题讨论】:
-
有一个official bug submission,但这个想法似乎是发布一个新的操作系统版本而不是浏览器更新。据说,它已在 Froyo (2.2) 中得到修复,这并不能真正帮助任何希望早期客户使用他们的网站的人。无论我在事件处理中做了什么,我都无法阻止 Android 留在那个领域并拉起键盘。 Android 完全忽略了这个 jQuery hack:
$("input[readonly=readonly]").unbind('focus').focus(function() { $("input.someOtherInput").focus(); });
标签: javascript android keyboard webkit readonly-attribute