TEXTAREAでTabキーを入力したい
ブラウザー上ではTabキーを打つとフォーカスが次の入力欄に移ります。当たり前ですよね。
なので仕方なくコピペでTabを入力したりします。それとTab幅は4桁にしてほしい(Qiitaの投稿欄も…)。
色分け表示のテキストエディターは各種ありますが、もっと軽いもので良いんです。
tabbedText.html
<textarea></textarea><style>textarea{-moz-tab-size:4;/* for Firefox */-o-tab-size:4;/* for Opera */tab-size:4;font-family:monospace;}</style><script src="tabbedText.js"type="text/javascript"></script>
tabbedText.js
textarea=document.getElementsByTagName('TEXTAREA');for(i=0;i<textarea.length;i++){textarea[i].addEventListener('keydown',function(event){switch(event.key){case'Tab':event.preventDefault();pos=event.target.selectionStart;val=event.target.value;val=val.substr(0,pos)+String.fromCharCode(event.keyCode)+val.substr(pos);event.target.value=val;event.target.selectionStart=pos+1;event.target.selectionEnd=pos+1;returnfalse;default:returntrue;// 通常の文字入力をさせる}returnfalse;},false);}