Переход в textarea сразу на нужный участок

Segey
На сайте с 23.08.2005
Offline
404
643

Как при выводе текста в поле textarea пометить какой-то текст, чтобы он был выделен и поле при формированни ставило эту строку ставило посередине т.е. сразу до него прокручивало? Выводится примерно так:


echo '<textarea>'.$l_text.$slovo.$r_text.'</textarea>';

Вот $slovo и нужно выделить и на него сразу переходить при выводе поля с текстом.

Brexit - уже совсем рядом. (https://about-this-model.blogspot.com/2019/03/brexit.html)
AM
На сайте с 04.11.2003
Offline
57
#1

<script>

function setCursorPosition(oInput,oStart,oEnd) {
if( oInput.setSelectionRange ) {
oInput.setSelectionRange(oStart,oEnd);
}
else if( oInput.createTextRange ) {
var range = oInput.createTextRange();
range.collapse(true);
range.moveEnd('character',oEnd);
range.moveStart('character',oStart);
range.select();
}
}

</script>
<script>
window.onload=function() {
setCursorPosition(document.getElementById('area'), 3, 6); }
</script>
<textarea id="area">this is textarea</textarea>

oStart - позиция начала выделения

oEnd - позиция конца выделения

Segey
На сайте с 23.08.2005
Offline
404
#2

Arty.M,

Несовсем понял, как их в нее передавать?

AM
На сайте с 04.11.2003
Offline
57
#3

Segey, если код у Вас в php, то можно подсчитать количество выводимых символов до $slovo и соотв. длину самого $slovo, а дальше дело техники ;)

Segey
На сайте с 23.08.2005
Offline
404
#4

Arty.M,

было бы делом техники, если бы техника была :( Я в JS профан :(

Посчитал я символы, получил $a и $b, а как вызывать эту процедуру?

Примерно так:

<textarea OnClick=''setCursorPosition(????,$a,$b)">

?

AM
На сайте с 04.11.2003
Offline
57
#5

<textarea OnClick="setCursorPosition(this, <? echo $a.",".$b; ?>)">

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий