Unselect text on focus
HTML
<input type="text" value="abc" /><br />
<input type="text" value="def" /><br />
<input type="text" value="xyx" />
JavaScript
function setCaretPos(element, begin, end) {
if (element.setSelectionRange) {
element.setSelectionRange(begin, end);
} else if (element.createTextRange) {
var range = element.createTextRange();
range.collapse(true);
range.moveEnd('character', end);
range.moveStart('character', begin);
range.select();
}
}
$('input').focus(function() {
var $input = $(this);
setTimeout(function() {
setCaretPos($input[0], 4, 4);
}, 0)
});