我假设您想进入下一部分。为了清楚起见,我添加了一个文本“这里!” 在演示中向您展示它确实会走到最后。
在下面的演示中,按Enter key从.field .value
到结束。
演示:http: //jsfiddle.net/GLzKy/1/
下面是来自https://stackoverflow.com/a/4238971/297641的函数,它实际上完成了所有工作。
$('.field .value').keydown(function (e) {
if (e.which == 13) { //Enter Key
e.preventDefault();
placeCaretAtEnd($(this).closest('.parent')[0]);
}
});
/**
This below function is from https://stackoverflow.com/a/4238971/297641
All credits goes to the original author.
*/
function placeCaretAtEnd(el) {
el.focus();
if (typeof window.getSelection != "undefined"
&& typeof document.createRange != "undefined") {
var range = document.createRange();
range.selectNodeContents(el);
range.collapse(false);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
} else if (typeof document.body.createTextRange != "undefined") {
var textRange = document.body.createTextRange();
textRange.moveToElementText(el);
textRange.collapse(false);
textRange.select();
}
}
在 FF、IE8 和 Chrome 中测试
参考: https ://stackoverflow.com/a/4238971/297641