多くの場合、Webページのテキストボックス内でテキストをフォーマットしたいときは、 Tab キー。
残念ながら、タブ文字を挿入するのではなく、コントロールを次のフォーム要素に移動します(ボタンやチェックボックスなど)。
Firefox/IEのようなブラウザの場合、テキストボックス内で、キーの組み合わせを入力してタブの書式設定動作を取得する方法はありますか?
Tabinta はこれを可能にするFirefoxアドオンです。
Windowsでは、あなたはプッシュすることができます Alt+9。これはテンキーテンキーでのみ機能します。 (リリース Alt 最後の数字キーを押した後)
Linuxおよびその他のPOSIXシステム(Mac OSを除く)
GTK +アプリケーション(FirefoxやChromeなど)でタブを入力するには
Ctrl + Shift + U
タイプ 9
押す Space または Enter
Mac OS X上のSafariとFirefoxでは、次のキーを押すことができます。 ControlOptionTab 現在編集中のテキストフィールドにタブを挿入します。
メモ帳または同様のテキストエディタを開き、新しい空白の文書を作成します。タイプ Tab。タブ文字をクリップボードにコピーします。 (Windowsでは、 Ctrl+A、 Ctrl+C これを行います)。
ブラウザのテキストエリアに戻ります。目的の場所にカーソルを置き、タブ文字を貼り付けます。 (Ctrl+V Windowsでは)。
出来上がりました。
Textarea Code Formatter というChromeプラグインがあります。
Chromeブラウザのテキストボックスにタブを挿入することができます。また、複数の行を強調表示したり、選択した各行の前にタブを挿入したりすることもできます。
しかし、問題はしばしばあなたが標準のタブ挿入動作を望んでいるということです。タブを使ってボックスを切り替える場合は、オプションでデフォルトで "無効"を選択することができます。
あなたのサイトの場合
jQueryプラグイン: http://teddevito.com/demos/textarea.html
jQuery(document).ready(function () {
$("textarea").tabby();
});
最初にjQueryとプラグインをロードしてから、タブを作成してタブを作成し、+ tabをそのまま「untab」に移動します。
ブラウザ全体をサポートするには、 Greasemonkey に46704のような拡張子、ユーザースクリプト、プラグインなどを使用する必要があります。
私はこの能力を得るためにAutoHotkeyをちょっとめちゃくちゃにしていますが、私が見つけた唯一の「防弾」解決策はpaste /です。(送信しない)タブ文字そのもの。
;
; TAB character
; pasted from clipboard
; win tab
;
#tab::
old_clip:=clipboard
clipboard:=A_Tab
clipWait
sendInput,^v
clipboard:=old_clip
clipWait
return
このAHKバインドは、追加のTABキーストロークを処理するテキストエディタでさえも便利です。例えば。 IDEスペースによる自動インデントを使用するように設定されています。
Firefoxで Tabinta を使用する大きな利点は、タブ文字を別のホットキーにマッピングできることです。ブラウザのタブキーのデフォルトの動作を失いたくない。
Internet Explorerでは、私が知っているブラウザの拡張機能のような解決策はありません。ここでの唯一の方法は、以前にメモ帳などの他のプログラムからタブ文字をコピーして、クリップボードにタブ文字を保持することです。
javaScriptソリューションでは、アクションを実行するテキストボックスの名前が必要になるため、これは理想的でも実用的でもありません。両方のブラウザでaltキーコードの組み合わせはまだ通常のタブ文字のキープレスイベントを実行するので、それらはどちらも動作しません。
Tab Grabber は、Tabintaのようなちょっとしたものです。Chrome専用です(textareaフィールドにTABを使うことができます)。
JQuerryのタビーを使う!行を選択してタブを押すのをサポートしていますodr SHIFT TAB
http://www.herby.sk/trapped/bower_components/jquery-tabby/textarea.mirror.html
テキストボックスにタブキーを入力するには、次のようなスクリプトを使用します(タブキーを受け付けるテキストボックスの名前はtxtLongText
です)。
[VB.NET]
txtLongText.Attributes.Add("onkeydown", _ "if(event.which || event.keyCode){if ((event.which == 9)" & _ "|| (event.keyCode == 9)) {document.getElementById('" & _ txtLongText.ClientID + "').selection = " & _ document.selection.createRange();" & _ txtLongText.ClientID & ".selection.text = " & _ " String.fromCharCode(9);return false;}} else {return true}; ")
[C#]
txtLongText.Attributes.Add("onkeydown", "if(event.which || event.keyCode){if ((event.which == 9)" + "|| (event.keyCode == 9)) {document.getElementById('"+ txtLongText.ClientID + "').selection = document.selection.createRange();" + txtLongText.ClientID + ".selection.text = String.fromCharCode(9);return false;}} else {return true}; ");
あるいは、ハードコーディングを避けるために、このコードをEnableTabType
という名前の関数に入れることができます。この関数には1つのパラメータしかありません。これは、タブ文字の入力を有効にするために必要なTextBox
コントロールを指定します。
[VB.NET]
Public Sub EnableTabType(tb As TextBox) tb.Attributes.Add("onkeydown", _ "if(event.which || event.keyCode){if((event.which == 9)" & _ "|| (event.keyCode == 9)) {document.getElementById('" & _ tb.ClientID & "').selection=document.selection.createRange();" & _ tb.ClientID & ".selection.text = " & _ " String.fromCharCode(9);return false;}}else{return true};") End Sub
[C#]
public void EnableTabType(TextBox tb) { tb.Attributes.Add("onkeydown", "if(event.which || event.keyCode){if ((event.which == 9)" + "|| (event.keyCode == 9)) {document.getElementById('"+ tb.ClientID + "').selection = document.selection.createRange();" + tb.ClientID + ".selection.text = String.fromCharCode(9);return false;}} else {return true}; "); }
出典: http://www.beansoftware.com/ASP.NET-Tutorials/Access-Tab-Key.aspx
またはahkを使用してエディタに4 *スペースを挿入します。
^Right::
tabspace:=" "
send,%tabspace%
return
コードの詳細説明は ahk code にあります。