【发布时间】:2015-05-27 03:16:02
【问题描述】:
出于以下考虑,我试图阻止在输入字段上进行选择
- 防止使用鼠标选择
- 防止使用键盘进行选择(包括 Ctrl+A、shift+箭头)
- 允许使用键盘和鼠标聚焦到现场
到目前为止,我已经尝试过这些事情:
CSS
我尝试过使用下面的类
.unselectable {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
结果:仍然可以选择
我也在下面尝试过,但没有成功:
$("#my_field").attr('unselectable','on')
.css({'-moz-user-select':'-moz-none',
'-moz-user-select':'none',
'-o-user-select':'none',
'-khtml-user-select':'none',
'-webkit-user-select':'none',
'-ms-user-select':'none',
'user-select':'none'
}).bind('selectstart', function(){ return false; });
Javascript
我尝试了以下
$( "#my_field" ).select(function(e) {
console.log("Select called");
e.preventDefault();
});
结果:控制台打印了消息,但是选择仍然有效
感谢您的帮助
【问题讨论】:
-
并非如此,这些解决方案不适用于输入
-
@Joel 该解决方案使它看起来没有被选中,但是选择仍然发生,我可以将该选择拖到另一个字段
标签: javascript css