checkboxes
当输入集中在jQuery中时,如何禁用退格按钮?当checkboxes
专注于并且我按下退格键(keycode = 8)时,浏览器认为我正在尝试返回页面并使用退格键作为history.go(-1)
命令。
$("div#types input").focus(function(){
window.onkeydown = function(e){
return !(e.keyCode == 8);
};
好吧,这将始终阻止退格按钮向后导航:
$(document).keydown(function(e) {
if (e.keyCode === 8)
{
return false;
}
});
现在要弄清楚如何仅在选中复选框时才运行它...
编辑:
确定复选框是否具有焦点的问题在于,只有在选项卡上或在代码中实际设置它时才会获得焦点。如果单击它,它会被选中,但它实际上并没有聚焦(至少在 chrome/safari 中)。这一切都取决于您如何设置焦点。
编辑2:
要使您的复选框在单击时具有焦点,只需添加以下内容:
$('input[type=checkbox]').click(function() {
$(this).focus();
});
...因此将它们放在一起,这将使复选框焦点单击并在复选框具有焦点时停止退格按钮(当然都在 $(document).ready 函数中):
$(document).keydown(function(e) {
if (e.keyCode === 8 && $('input[type=checkbox]:focus').size() > 0)
{
return false;
}
});
$('input[type=checkbox]').click(function() {
$(this).focus();
});