Просмотр поста

.
ramzes

venom, без шторма конечно трудновато отследить нужный момент
но походу косяк есть вот тут

if (obj.selectionStart !== obj.selectionEnd) {
                var start = obj.selectionStart;

сама логика не верна, если ни чего не выделено, то селекшнстарт не отправляется в старт (может где не углядел)
ошибка в том, что если у тебя курсор не в начале текста, то селекшнстарт не нулевой, просто без выделения он равняется селекшнэнд, что как раз и не вписывается в условие obj.selectionStart !== obj.selectionEnd
но, тогда я не понимаю как это вообще работает с компа) видимо все таки где то упустил
посмотрю еще
хотя...
в }else{ вот есть как раз
obj.value = obj.value + str + str_cl;

что даст нужный эффект, вставит в конец строки
очень сложно с непривычки отследить уровни вложенности условий без скобок IDE (((