Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: tosheek от 14 Марта 2007, 15:54:59

Название: Номер символа в тексте
Отправлено: tosheek от 14 Марта 2007, 15:54:59
Здравствуйте!
Вот понадобилось узнать номер символа в тексте, т.е. его порядковый номер, отсносительно других.

Нашел функцию, которая это делает:

function getCursorPos(textElement)  
{
var sOldText = textElement.value;  
var objRange = document.selection.createRange();  
var sOldRange = objRange.text;
var sWeirdString = \'#%~\';
objRange.text = sOldRange + sWeirdString;
objRange.moveStart(\'character\', (0 - sOldRange.length - sWeirdString.length));
var sNewText = textElement.value;
objRange.text = sOldRange;

for (i=0; i <= sNewText.length; i++)  
   {
   var sTemp = sNewText.substring(i, i + sWeirdString.length);  
   if (sTemp == sWeirdString)  
      {  
      var cursorPos = (i - sOldRange.length);  
      return=cursorPos;
      }
   }
}  


Все работает, но теперь я не могу выделить текст в textarea.
Помогите пожалуста поправить так, чтобы текст выделялся или посоветуйте другую функцию, которая бы узнавала номер символа.
Название: Готово!!!
Отправлено: tosheek от 15 Марта 2007, 21:15:12
Проблема решена! Мне посоветовали вот это DocumentSelection (http://debugger.ru/projects/browserextensions/documentselection)  - мощная весч!
А я в свою очередь советую вам, если подобные вопросы возникнут.