Цитирование текста на странице
Подскажите, как цитировать выделенный текст на странице?
Нужно чтобы цитируемый текст копировался в 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('"', '"');} 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('Для цитирования следует выделить мышкой цитируемый текст'); } } |
<body> <div class="post">Недавно в Chrome Web Store мне попалось приложение jsFiddle, проект британского программиста Piotr Zalewa aka @zalun. По-сути, это очередная песочница для web-программистов, но говоря «очередная» я не подразумеваю «никому не нужная». Я долго ждал момента, когда WYSIWYG заменят такие песочницы, и, похоже, дождался.</div> <a href="javascript: void(0);" onclick="quote_message();">цитировать выделенный текст</a> <form action="actions.php?new_message" name="usermessageform" method="post"> <textarea cols="60" rows="20" wrap="VIRTUAL" id="message"></textarea> </form> <script> var selecttext; var message = document.getElementById("message"); (document.body || document.documentElement).onmouseup = function (e) { var el = e ? e.target : window.event.srcElement; if (el.tagName != 'DIV' || el.className != 'post') return; selecttext = ''; if (window.getSelection) { selecttext = window.getSelection(); } else if (document.getSelection) { selecttext = document.getSelection(); } else if (document.selection) { selecttext = document.selection.createRange().text; } }; function quote_message() { message.value+= selecttext; selecttext = ''; } </script> </body> смотрите пример и разбирайтесь |
Часовой пояс GMT +3, время: 19:14. |