在Android浏览器中点击/单击表单背景突出显示

时间:2013-06-04 06:15:40

标签: android jquery browser yii

我正在尝试调整基于Yii的网站,以便在Android手机上表现得很好。

一个问题是,在数据输入表单上,复选框通常比您的手指小。当您点击一个复选框(或任何小项目)时,如果您的手指略微偏离,整个表单元素将突出显示。如果您触摸表单的空白区域,则会出现相同的行为 - 整个表单矩形闪烁橙色,手机会点击/点击声音。

复选框仍然可以正常切换 - 当您点击复选框(或其标签)时,看起来只是看起来很混乱,看到整个表单呈橙色闪烁。

更新

也许一个更好的问题是“Android浏览器尝试通过让表单元素响应点击/点击来做什么?”如果我稍微缩放表格,那么我可以点击任何地方,只有表单控件响应(这是所需的行为)。但是当缩小到1:1时,文本字段之外的任何点击都会导致整个表单元素的橙色闪烁。表单设计为1:1。我希望也许拥有Android浏览器经验的人会知道为什么会这样做,并且可能会建议一种让它表现得更好的方法。

1 个答案:

答案 0 :(得分:0)

事实证明,当validateOnSubmit设置为true时,这是yiiactiveform.js的副作用。在这种情况下,脚本会添加提交和鼠标事件处理程序,这些处理程序会导致Android浏览器(可能还有其他基于触摸的浏览器)在文本框外的表单上的任何位置可视地响应点击/点击。

我不知道为什么放大会对这种行为产生任何影响,但由于某些原因它会这样做。

无论如何,最简单的解决方案是禁用validateOnSubmit选项。看起来唯一的另一个选择是重写yiiactiveform.js以不绑定到有问题的表单事件。我想自定义版本可能只依赖于从提交按钮显式调用,而不是试图挂钩到表单事件。