我有一个文本域,我想知道在使用JavaScript时我的光标是否在文本域的最后一行或第一行。
我考虑获取第一个换行符和最后一个换行符的位置,然后再获取光标所在的位置。
我考虑获取第一个换行符和最后一个换行符的位置,然后再获取光标所在的位置。
var firstNewline = $('#myTextarea').val().indexOf('\n');
var lastNewline = $('#myTextarea').val().lastIndexOf('\n');
var cursorPosition = ?????;
if (cursorPosition < firstNewline)
// I am on first line.
else if (cursorPosition > lastNewline)
// I am on last line.
- 是否可以获取文本区域内的光标位置?
- 你有更好的方法来确定我是否在文本区域的第一行或者最后一行吗?
如果JavaScript简单或更简单,优先考虑使用jQuery解决方案。
indexOf
和lastIndexOf
函数不是val
函数的方法。你应该使用这个(尽管你根本不应该使用那段代码):var firstNewline = String($("#myTextarea").val()).indexOf('\n');
- yaakov