Здравствуйте!
Мне нужно, чтобы при нажатии на кнопку, выделенный текст в texterea обрамлялся тегами (как на форумах). С JavaScript не дружу, поэтому решила скрипт в интернете поискать. Нашла.
function fnWrapWithTags(txt, sTag, sClass){
var sHTML = "[" + sTag;
sHTML += (sClass) ? " class=\"" + sClass + "\"" : "";
sHTML += ("]" +txt + "[/" + sTag + "]");
return sHTML;
}
function fnCode(){
var txt = this.toString();
var B = "B";
return fnWrapWithTags(txt, B, "");
}
String.prototype.code = fnCode;
function fnApplyTag(B){
// Спасибо Александру Карповичу <alexandr@cybermail.net> за найденные баги
if (!document.all && !document.all.item) return; // «Уходим, уходим, уходим», если это не IE4+
var oSelTxt = document.selection.createRange();
var sSelTxt = oSelTxt.text;
if (sSelTxt) oSelTxt.text = eval("sSelTxt."+B+"()");
}
вызывается:
<textarea rows="12" name="S2" cols="43" style="font-family: Arial; font-size: 12pt"></textarea></p>
<a href="javascript
:fnApplyTag('code');">B</a>
Мне тут все понятно: при нажатии на ссылку, в функции fnApplyTag "В" заменяется "code". Но мне надо, чтобы еще можно было вставлять другие теги (I,U...). Я пыталась экспериментировать, но только один какой-то тег вставляется (либо b, либо i). Вот. Помогите, пожалуйста!