Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Загадка со строкой - не хочет работать ctarAt, charCodeAt (https://javascript.ru/forum/misc/23076-zagadka-so-strokojj-ne-khochet-rabotat-ctarat-charcodeat.html)

Почемучкин 10.11.2011 18:15

Загадка со строкой - не хочет работать ctarAt, charCodeAt
 
Получаю строку с выделенным текстом в FireFox, пытаюсь обратится к отдельным символам с помощью .charAt() - ничего не выходит:

javascript:
var t=((window.getSelection&&window.getSelection())||(document.getSelection&&document.getSelection())||(document.selection&&document.selection.createRange&&document.selection.createRange().text));
if(t!=''){
  s='';
  for (i=0; i<t.length; i++) {
    s = s +  t.charAt(i);
  };
  alert('s='+s +'\n t='+t);
}
void(0);


А вот если просто переменной строку присвоить, то все в порядке:

javascript:
var t='stroka';
if(t!=''){
  s='';
  for (i=0; i<t.length; i++) {
    s = s +  t.charAt(i);
  };
  alert('s='+s +'\n t='+t);
}
void(0);


Почему так? И как отдельные символы из выделенного текста получить?

Почемучкин 10.11.2011 18:22

А, оказывается вместо строки возвращается объект Selection...


Часовой пояс GMT +3, время: 00:42.