Проблема с 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 не хотелось бы юзать, а вот как "свой" сделать корректно работающим ? Заранее благодарен :) |
Simones,
может так ? http://javascript.ru/forum/css-html/...tri-tegov.html |
Спасибо Вам огромное, это оно :)
|
Часовой пояс GMT +3, время: 08:44. |