8

任何人都知道如何防止 HTML 复选框在单击时获得焦点?我仍然希望它改变状态,只是没有得到焦点。

4

2 回答 2

9

您可以通过在 mousedown 处理程序中使用 preventDefault() 来阻止焦点:

$('input[type=checkbox]').mousedown(function (event) {
    // Toggle checkstate logic
    event.preventDefault(); // this would stop mousedown from continuing and would not focus
});

在纯 JavaScript 中:

checkbox.onmousedown = function (event) {
    // Toggle checkstate logic
    event.preventDefault(); // this would stop mousedown from continuing and would not focus
}
于 2012-11-08T06:53:32.763 回答
0

给这个CSS:

input {outline: 0;}

但请注意,当您使用Tab键移动控件时,将无法识别您当前处于哪个控件中。

更新#1

使用这个 JavaScript:

$('input[type=checkbox]').click(function () {
    this.blur();
});
于 2012-11-08T06:49:44.493 回答