fen0men, может это поможет:| Код | <html> <head> <script type='text/javascript'> var ta, d, i; function init(){ d=document.getElementById('n1'); ta=document.getElementById('ta'); i=document.forms['formular'].elements['input']; d.innerHTML=i.value; }
function refresh(){ d.innerHTML=i.value; }
function insert(par){ var bT, eT, insText; bT='<'+par+'>'; eT='</'+par+'>'; i.focus(); if (typeof document.selection!='undefined'){ var range=document.selection.createRange(); insText=range.text; range.text=bT+insText+eT; range=document.selection.createRange(); insText.length ? range.moveStart('character',bT.length+insText.length+eT.length) : range.move('character',-eT.length); range.select(); } else if (typeof i.selectionStart!='undefined'){ var start, end, pos; start=i.selectionStart; end=i.selectionEnd; insText=i.value.substring(start,end); i.value=i.value.substr(0,start)+bT+insText+eT+i.value.substr(end); insText.length ? pos=start+bT.length+insText.length+eT.length : pos=start+bT.length; i.selectionStart=pos; i.selectionEnd=pos; } else { var pos, re; re=new RegExp('^[0-9]{0,3}$'); while(!re.test(pos)) pos=prompt('Insert at position (0..'+i.value.length+'):','0'); if (pos>i.value.length) pos=i.value.length; insText=prompt('Please, type your text here:'); i.value=i.value.substr(0,pos)+bT+insText+eT+i.value.substr(pos); } refresh(); } </script> </head> <body onload='init();'> <h1>Presentation: inserting content into a Textarea</h1> <form name='formular' action=''> <textarea id='ta' name='input' cols='30' rows='10'>Your message</textarea> <div id='n1' style='background-color:#FFE;border:1px solid #55A;padding:2px'></div><br/> <!-- Here you can add new buttons: --> <input type='button' value='<b>' onClick="insert('b');"> <input type='button' value='<i>' onClick="insert('i');"> <input type='button' value='<u>' onClick="insert('u');"> <input type='button' value='<s>' onClick="insert('s');"> <!-- End of inserting --> <input type='button' value='Refresh' onClick='refresh();'> </form> </body> </html> |
Ценного там только ф-ция insert() P.S. посмотри заодно http://forum.vingrad.ru/forum/topic-212552.html |