Вставка bb-кода: как сохранить выделение?
Здравствуйте! Доброго времени суток!
Есть такой скрипт, который вставляет в textarea смайлики и bb-код. Работает под все браузеры. Но при вставке bb-кода вокруг выделенного текста он сбрасывает выделение. Как сделать, чтобы выделение сохранялось? Заранее благодарю. Скрипт: <script language="javascript" type="text/javascript"> function addText(Text,Message) { var obj = document.form.message; obj.focus(); if (document.selection && document.selection.createRange) // Internet Explorer { sel = document.selection.createRange(); if (sel.parentElement() == obj) sel.text = Text; } else if (typeof(obj) != "undefined") // Firefox { var longueur = parseInt(obj.value.length); var selStart = obj.selectionStart; var selEnd = obj.selectionEnd; obj.value = obj.value.substring(0,selStart) + Text + obj.value.substring(selEnd,longueur); } else obj.value += Text; obj.focus(); } function addTags(Tag,fTag,Message) { var obj = document.form.message; obj.focus(); if (document.selection && document.selection.createRange) // Internet Explorer { sel = document.selection.createRange(); if (sel.parentElement() == obj) sel.text = Tag + sel.text + fTag; } else if (typeof(obj) != "undefined") // Firefox { var longueur = parseInt(obj.value.length); var selStart = obj.selectionStart; var selEnd = obj.selectionEnd; obj.value = obj.value.substring(0,selStart) + Tag + obj.value.substring(selStart,selEnd) + fTag + obj.value.substring(selEnd,longueur); } else obj.value += Tag + fTag; obj.focus(); } </script> Форма: <form method="post" name="textform" action="obrabotchik.php"> <a title="Bold:" onmousedown="addTags('[B]','[/B]')" style="background-color:#F7F7F7; font-size:10pt; border: outset white 1px;"> <b>B</b> </a> <img src="smile.gif" title="[:)]" onmousedown="addText('[:)]')"> <textarea wrap="VIRTUAL" name="message" cols="50" rows="10"></textarea> </form> :help: |
Часовой пояс GMT +3, время: 06:39. |