【发布时间】:2012-05-23 12:37:58
【问题描述】:
我被要求禁用复选框的“勾选”。我没有被要求禁用复选框,而是简单地禁用“滴答”。
换句话说,用户会认为复选框是可勾选的,但事实并非如此。相反,单击复选框将导致出现模式对话框,为用户提供更多选项来打开或关闭复选框所代表的功能。如果在对话框中选择的选项导致该功能被打开,那么复选框将被勾选。
现在,真正的问题是,对于 一秒,您仍然可以看到复选框被选中。
我试过这样的方法:
<input type='checkbox' onclick='return false' onkeydown='return false' />
$('input[type="checkbox"]').click(function(event) {
event.preventDefault();
alert('Break');
});
如果您运行此程序,则会出现警报,显示刻度是可见的(警报只是在那里证明它仍然会被打勾,在生产中,警报不存在)。在一些机器速度较慢的用户和/或渲染器/javascript 速度较慢的浏览器中,用户可以看到非常微弱的闪烁(闪烁有时会持续半秒,这很明显)。
我团队中的一名测试人员将此标记为缺陷,我应该修复它。我不确定还有什么方法可以防止复选框中的勾闪烁!
【问题讨论】:
标签: javascript checkbox