function bold(){
if(document.all){ //IE
var str=document.selection.createRange().text;
if (str != "") {
document.selection.createRange().text="<b>" + str + "</b>";
} else {
document.form1.CBBE_TEXT.value += "<b></b>"
}
} else { //Firefox
var el=document.getElementById('text');
var sPos=el.selectionStart;
var ePos=el.selectionEnd;
var str=el.value.substring(sPos, ePos);
el.value=el.value.substring(0, sPos) +
"<b>" + str + "</b>" +el.value.substr(ePos);
}
}
function italic(){
if(document.all){ //IE
var str=document.selection.createRange().text;
if (str != "") {
document.selection.createRange().text="<i>" + str + "</i>";
} else {
document.form1.CBBE_TEXT.value += "<i></i>"
}
} else { //Firefox
var el=document.getElementById('text');
var sPos=el.selectionStart;
var ePos=el.selectionEnd;
var str=el.value.substring(sPos, ePos);
el.value=el.value.substring(0, sPos) +
"<i>" + str + "</i>" +el.value.substr(ePos);
}
}
を
<input type="button" value="太字" onclick="bold()">
<input type="button" value="斜字" onclick="italic()">
で制御しています。
関数化できませんか?
No.2
- 回答日時:
つまり、
bold() とitalic() は、内容が<i></i> が<b></b>だけの違いなので
1つにできないかということだと思いますが
例えば
deco("i")
のように呼び出して
function deco( k )
のように受けるとすると
="<i>" + str + "</i>";
のような部分は
="<" + k + ">" + str + "</" + k + ">";
のように一般化できます。
No.3ベストアンサー
- 回答日時:
<b></b>か、<i></i>を文字の前後に付加すればいいんですよね?
<input type="button" value="太字" onclick="cnv('b')"> <input type="button" value="斜字" onclick="cnv('i')">
function cnv(var p1){
var ps,pe,pd;
ps = "<"+p1+">";
pe = "</"+p1+">";
pd = ps+pe;
if(document.all){ //IE
var str=document.selection.createRange().text;
if (str != "") {
document.selection.createRange().text=ps + str + pe; } else { document.form1.CBBE_TEXT.value += pd; } } else { //Firefox var el=document.getElementById('text');
var sPos = el.selectionStart;
var ePos = el.selectionEnd;
var str = el.value.substring(sPos, ePos); el.value = el.value.substring(0, sPos) + ps + str + pe + el.value.substr(ePos); } }
でいかがでしょうか?
<<マルチポスト先に回答した内容ですが、これ以降の回答は、削除されて記録にないため、省略します。>>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
開いた子ウィンドウにあるボタ...
-
formのfileの値をhiddenでも持...
-
onclickが動作しない
-
WordpressのCocoonというテーマ...
-
SendKeys()が一番最後に実行さ...
-
HTMLのテキストボックスへのド...
-
JavaScriptでIE上のボタンクリック
-
innerHTML内では改行は禁止?
-
コードレビューをお願いします。
-
BackSpaceしたい(QNo.2734284の...
-
任意の<DIV></DIV>の中に計算結...
-
javaScriptの変数をJavaの変数...
-
JSPファイルにJavaScriptを埋め...
-
JavaScriptのfileオブジェクト...
-
Javascriptで'(シングルクォー...
-
VB.NETで<Input>タグ、<text...
-
javascriptで作成されたテーブ...
-
window.openで開いた子ウィンド...
-
クリックさせたいが、click()が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
JavascriptでDOM-based XSSの発...
-
onclickが動作しない
-
クリックさせたいが、click()が...
-
追加ボタンを押した際に ok ボ...
-
innerHTML内では改行は禁止?
-
ボタンかリンクをクリックする...
-
formのfileの値をhiddenでも持...
-
javaScriptの変数をJavaの変数...
-
JavaScriptのfileオブジェクト...
-
VB.NETで<Input>タグ、<text...
-
受け取ったパラメータが文字化け
-
JQueryでfunctionに引数としてI...
-
javascriptで作成されたテーブ...
-
jQueryで設定したイベントハン...
-
開いた子ウィンドウにあるボタ...
-
コードレビューをお願いします。
-
ボタンをクリックするとテキス...
-
BackSpaceしたい(QNo.2734284の...
-
URL 判定
おすすめ情報