Textarea и выделение текста
В textarea текст такого формата:
Текст1 Текат2 Текст3 Текат4 Текст5 Текст6 Подскажите возможно ли реализовать выделение текста по нажатию в textarea. Но не просто выделение. Необходимо допустим если я нажал на Текст2 или Текст3 выделить нужно только Текст2 и Текст3. Если я нажму на Текст4 то выделить нужно только Текст4. То есть необходимо выделять все что находится до Enter и после Enter. Скажите подобное можно реализовать? |
Допустим так:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <textarea id="ta" style="width:500px;height:300px"> Текст1 Текат2 Текст3 Текат4 Текст5 Текст6 </textarea> <script> function findChunkStart(text, searchStart) { for (var i = searchStart; i > 0; i--) { if (text[i] == '\n' && text[i - 1] == '\n') return i + 1; } return 0; } function findChunkEnd(text, searchStart) { for (var i = searchStart; i < text.length - 1; i++) { if (text[i] == '\n' && text[i + 1] == '\n') return i + 1; } return text.length +1; } ta.addEventListener('mousedown', function(e) { setTimeout(function() { var searchStart = this.selectionStart; this.selectionStart = findChunkStart(this.value, searchStart); this.selectionEnd = findChunkEnd(this.value, searchStart); }.bind(this)); }); </script> </body> </html> В IE возможны траблы символами конца строк. Можно вместо циклов искать регулярками. И вобще нафиг это все нужно ) |
Спасибо большое!
|
Часовой пояс GMT +3, время: 11:37. |