Показать сообщение отдельно
  #1 (permalink)  
Старый 14.06.2014, 08:48
Аспирант
Отправить личное сообщение для useruser Посмотреть профиль Найти все сообщения от useruser
 
Регистрация: 20.01.2013
Сообщений: 34

Цитирование текста на странице
Подскажите, как цитировать выделенный текст на странице?
Нужно чтобы цитируемый текст копировался в textarea с добавлением [quote].
Ссылка на мой пример http://jsfiddle.net/u6vQc/
Я что-то упустил или просмотрел. Мой пример не работает.
Заранее спасибо

Какойто-текст
<br><br>
    
Недавно в Chrome Web Store мне попалось приложение jsFiddle, проект британского программиста Piotr Zalewa aka @zalun. По-сути, это очередная песочница для web-программистов, но говоря «очередная» я не подразумеваю «никому не нужная». Я долго ждал момента, когда WYSIWYG заменят такие песочницы, и, похоже, дождался.
<br><br> 

<a href="javascript: void(0);" onmousedown="quote_message('Имя пользователя');">цитировать выделенный текст</a>
<br><br>
    
<form action="actions.php?new_message" name="usermessageform" method="post">
<textarea cols="60" rows="20" wrap="VIRTUAL"></textarea>
</form>


//Функция цитирования текста
//В адресной строке сейчас [url]http://www.site.ru/page.php?t=15[/url] т.е. t=15

function quote_message(nickname)
{
    var t = '';
    if (nickname!='') {nickname = nickname.replace('&quot;', '"');}
    isDOM=document.getElementById; isMSIE=document.all && document.all.item; isNetscape4=document.layers; isOpera=window.opera; isOpera5=isOpera && isDOM; 
	isMSIE5=isDOM && isMSIE; isMozilla=isNetscape6=isDOM && !isMSIE && !isOpera;
    if (isMozilla || (isOpera && !isMSIE5)) { t=window.getSelection().toString();}
    if (isMSIE5) { text_obj=document.selection.createRange(); t=text_obj.text;}
    if (nickname!='') { t = "[nickname]"+nickname+"[/nickname]\r\n"+t;}
    if (t!='') {
        document.forms.postform.usermessageform.value+="\r\n[quote]"+t+"[/quote]\r\n";
        window.location.href="#reply";
    } else {
        alert('Для цитирования следует выделить мышкой цитируемый текст');
    }
}
Ответить с цитированием