Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.06.2013, 21:01
Аспирант
Отправить личное сообщение для Simones Посмотреть профиль Найти все сообщения от Simones
 
Регистрация: 13.02.2013
Сообщений: 32

Проблема с BBcodes
Здравствуйте, форумчане ! Пишу небольшой скрипт bbcode и никак не могу справится с такой вот проблемой:
В textarea поле выделяю текст (ф-я getSelText), нажимаю на кнопку ббкода ( onclick="bbcode('', '', '#text');" ) но если выделенная комбинация попадается в самом поле, то затирается первая попавшиеся (т.е. не всегда та, которая была выделена).
getSelText:
function getSelText (){
  var userSelection, ta;
  if (window.getSelection && document.activeElement){
    if (document.activeElement.nodeName == "TEXTAREA" ||
        (document.activeElement.node
Name == "INPUT" &&
        document.activeElement.getAttrib
ute("type").toLowerCase() == "text")){
      ta = document.activeElement;
      userSelection = ta.value.substring(ta.selectionStart, ta.selectionEnd);
    return userSelection;
    } else {
      userSelection = window.getSelection();
    return userSelection;
    }

  } else {
    // all browsers, except IE before version 9
    if (document.getSelection){       
        userSelection = document.getSelection();
        return userSelection;
    }
    // IE below version 9
    else if (document.selection){
        userSelection = document.selection.createRange();
        return userSelection;
    }
  }
}


BBcode:
function bbcode(open,close,form) {

$(form).focus();
var select = getSelText(); //Выделенный текст
var now = $(form).val(); //Текущее содержимое текстового поля

if(select != '') {

var now = now.replace(select, open+select+close); //Замена выделенного
$(form).val(now);

}else{
$(form).val(now+open+close);
}

}

"Тяжелый" редактор, вроде wysiwyg не хотелось бы юзать, а вот как "свой" сделать корректно работающим ?
Заранее благодарен
Ответить с цитированием
  #2 (permalink)  
Старый 18.06.2013, 22:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Simones,
может так ? Как переместить курсор внутри тегов?
Ответить с цитированием
  #3 (permalink)  
Старый 19.06.2013, 13:50
Аспирант
Отправить личное сообщение для Simones Посмотреть профиль Найти все сообщения от Simones
 
Регистрация: 13.02.2013
Сообщений: 32

Спасибо Вам огромное, это оно
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с обработкой ескольких .hover() anocean jQuery 3 15.06.2012 22:43
Проблема с Popup окном vovuslik jQuery 5 12.06.2010 16:12
Проблема с дизайном после отправки xmlhttprequest, Проблема с дизайном после отправки cyberx AJAX и COMET 3 01.05.2010 17:07
Проблема с CSS COKOJIOB (X)HTML/CSS 5 04.08.2009 14:19
Проблема спама lliberty AJAX и COMET 1 12.03.2009 16:47