---フレーム1--- // 文字クリック時 function selectWord(index){ with(フレーム2){ strTemp = body.value; //テキストエリア if (strTemp.length == 0 || 改行有りにチェックがあったら){ フレーム2.ins(wordList1[index],""); }else{ フレーム2.ins("\r\n"+wordList1[index],"");
---フレーム2--- var n=0,s=0,elem=null function pos(e){ elem=e var sel=document.selection.createRange() var r=elem.createTextRange() r.moveToPoint(sel.offsetLeft,sel.offsetTop) r.moveEnd("character",sel.text.length) s=r.text.replace(/\r/g,"").length r.moveEnd("textedit") n=r.text.replace(/\r/g,"").length+(elem.value.match(/(\r\n)*$/),RegExp.lastMatch.length/2) } function ins(a,b){ if(!elem)return var r=elem.createTextRange() r.collapse() r.moveStart("character",elem.value.replace(/\r/g,"").length-n) r.moveEnd("character",s) r.text=a+r.text+b r.collapse(false) r.select() s=0 pos(elem) }