I am trying to prevent selection on an input field with the following considerations
- Prevent selection using mouse
- Prevent selection using keyboard (including Ctrl+A, shift+arrows)
- Allow focusing into field using keyboard and mouse
So far I have tried these things:
CSS
I have attempted the using the following class
.unselectable {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
Result: selection still possible
I have also tried below with no success:
$("#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
I tried the below
$( "#my_field" ).select(function(e) {
console.log("Select called");
e.preventDefault();
});
Result: console printed the message, however the select still works
Thanks for your help
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…