[javascript]テキストエリアのカーソル位置に挿入・選択範囲をタグで囲う
テキストエリアのカーソル位置に挿入・選択範囲をタグで囲う
まずは選択範囲を無視して現在のテキストエリアのカーソルの位置に挿入するようにしてみます。<html>
<body>
<script>
function insert(str) {
let input = document.getElementById('text_area');
//テキストエリアに入力されている文字数
let length = input.length;
let position = text_area.selectionStart;
let before = input.value.substring(0, position);
let after = input.value.substring(position, input.length);
input.value = before + str + after;
}
</script>
<textarea id="text_area" rows="5" cols="40">あいうえおかきくけこさしすせそ</textarea>
<button type="button" onclick="insert('[ABC]')">カーソル位置に[ABC]を挿入</button>
</body>
</html>
次に選択範囲も考慮して挿入やタグなどで囲うようにしてみます。
<html>
<body>
<script>
function insert(str) {
let input = document.getElementById('text_area');
let input_length = text_area.value.length;
let select_1 = text_area.selectionStart;
let select_2 = text_area.selectionEnd;
//選択範囲より前
let before = text_area.value.substring(0, select_1);
//選択範囲より後
let after = text_area.value.substring(select_2, input_length);
//選択範囲
let select_value = text_area.value.substring(select_1, select_2);
if (str.match(/\?/)) {
select_value = str.replace(/\?/g, select_value);
} else {
select_value = str;
}
text_area.value = before + select_value + after;
}
</script>
<textarea id="text_area" rows="5" cols="40">あいうえおかきくけこさしすせそ</textarea>
<button type="button" onclick="insert('[ABC]')">選択範囲に[ABC]を挿入</button>
<button type="button" onclick="insert('[[?]]')">選択範囲を[[と]]で囲む</button>
</body>
</html>
ページ情報
| タイトル | [javascript]テキストエリアのカーソル位置に挿入・選択範囲をタグで囲う |
| URL | https://www.nomuramath.com/tjw53eoc/ |
| SNSボタン |
ブロック対角行列の固有多項式と固有値
\[
p_{A}\left(\lambda\right)=\prod_{k\in\left\{ 1,2,\cdots,r\right\} }p_{A_{k}}\left(\lambda\right)
\]
ブロック対角行列の逆行列
\[
\left(\begin{array}{cccc}
A_{1,1} & O & \cdots & O\\
O & A_{2,2} & \ddots & O\\
\vdots & \ddots & \ddots & \vdots\\
O & O & \cdots & A_{p,p}
\end{array}\right)^{-1}=\left(\begin{array}{cccc}
A_{1,1}^{-1} & O & \cdots & O\\
O & A_{2,2}^{-1} & \ddots & O\\
\vdots & \ddots & \ddots & \vdots\\
O & O & \cdots & A_{p,p}^{-1}
\end{array}\right)
\]
対称ブロック分けのトーレス
\[
\tr\left(\begin{array}{cccc}
A_{1,1} & A_{1,2} & \cdots & A_{1,p}\\
A_{2,1} & A_{2,2} & \ddots & A_{2,p}\\
\vdots & \ddots & \ddots & \vdots\\
A_{p,1} & A_{p,2} & \cdots & A_{p,p}
\end{array}\right)=\sum_{k=1}^{p}\tr\left(A_{k,k}\right)
\]
ブロック対角行列の和・積・べき乗
\[
\left(\begin{array}{cccc}
A_{11} & O & \cdots & O\\
O & A_{22} & \ddots & O\\
\vdots & \ddots & \ddots & \vdots\\
O & O & \cdots & A_{pp}
\end{array}\right)^{k}=\left(\begin{array}{cccc}
A_{11}^{k} & O & \cdots & O\\
O & A_{22}^{k} & \ddots & O\\
\vdots & \ddots & \ddots & \vdots\\
O & O & \cdots & A_{pp}^{k}
\end{array}\right)
\]

