如何确定光标位置是否位于textarea中使用JavaScript定义的行的起始位置?确定光标位置是否在textarea中定义的行的起始位置
回答
使用这里提供的答案:
Caret position in textarea, in characters from the start
您可以在文本光标位置得到补偿。完成之后,您可以在偏移量之前计算<textarea>
文本中出现的换行符,以确定您所在的行。如果偏移量刚好在换行符之后,那么你就在行的开始位置。使用这两种方法,您应该能够确定您是否处于特定行的开始位置。例如:
var offset = getCaret('mytextarea');
var text = document.getElementById('mytextarea').value;
var line_number = 1;
var i;
for (i = 0; i < offset; i++) {
if (text[i] == '\n') {
line_number++;
}
}
if (!i || text[i-1] == '\n') {
// You're at the start of a line
}
注:IE可能会使用回车(\ r)为好,所以你可能要考虑这些。
您可以使用一个或多个on事件的组合:onchange
,onkeyup
,onkeydown
,onkeypress
。
为您的总体目标提供一些细节。
'onchange'只会在输入控件失去焦点时触发*并且*自获得焦点后其值已被修改。 http://www.w3.org/TR/REC-html40/interact/scripts.html#adef-onchange – 2010-07-03 16:48:26
在OP中没有额外的规范,我提供了选项。谁知道事件可能会有所帮助。 – 2010-07-03 16:55:37
好的,我可以使用onkeydown,但如何检查? – lam3r4370 2010-07-03 16:58:12
- 1. 如何确定UITextField的光标位置?
- 2. 确定光标位置是否在屏幕的特定区域中
- 3. 确定textarea是哪一行的光标
- 4. 确定表格在Word文档中的起始位置
- 5. 多个EditText - 指定光标的位置
- 6. 确定定义bash函数的位置
- 7. 确定UNIX别名的定义位置
- 8. 在光标位置
- 9. 如何确定textarea光标相对于x,y窗口的位置?
- 10. 光标位置
- 11. ASP.NET/HTML - 使用光标时的textarea光标位置
- 12. 如何在textarea中设置光标位置top
- 13. 如何确定Windows中的文本光标位置
- 14. uitextfield中的光标位置
- 15. EditText中的光标位置
- 16. 如何确定鼠标光标是否位于控件中
- 17. postgres是否支持在串行定义中设置起始值?
- 18. 鼠标光标在Javascript中的位置?
- 19. Javascript - 在textarea中光标位置插入图片标签
- 20. 如何在CKEditor的特定位置设置光标?
- 21. svg animate - 设置自定义起始位置
- 22. 如何确定闪烁的光标位置VB.net
- 23. 如何确定当前光标位置的活动监视器
- 24. 自定义Zend_Action_Controller的正确位置
- 25. EditText光标位置
- 26. 光标位置,jquery
- 27. 在Mac OS中设置光标位置
- 28. 在UITextField中设置光标位置(Monotouch)
- 29. 获取光标位置或光标所在行的行数TinyMCE
- 30. 设置光标位置
可能的重复:http://stackoverflow.com/questions/263743/how-to-get-cursor-position-in-textarea – 2010-07-03 16:48:02
不能;)他想要得到textarea中的光标位置,我 - 确定是否游标在定义的行上开始(例如3) – lam3r4370 2010-07-03 16:54:13