如何確定光標位置是否位於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