ホームページビルダー12使用。

IEでの表示を想定です。
TEXTAREA 内の一部分の文字列を色を変え、点滅させる方法がありましたら。教えてください。

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2009/03/05 21:58:57
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:kebo987654 No.3

回答回数38ベストアンサー獲得回数10

ポイント70pt

先ほどは変な事を書いていたみたいで申し訳ありませんでした。

いろいろ書きなおしました。

<!-- スクリプト //-->
<script type="text/javascript">
	var doc=document;
	var ifrDoc;
	window.onload=function(){
		
		var defaultText='<blink>点滅させたい文字列</blink>';
		var fontColor=["black","red"];
		
		ifrDoc=frames[0].document;
		ifrDoc.open();
		ifrDoc.write(['<html lang="ja"><head><meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /><style type="text/css">p{margin:0}</style><title></title></head><body><p>',defaultText,'</p><p></p></body></html>'].join(''));
		ifrDoc.close();
		ifrDoc.designMode="on";
		var flag=0;
		setInterval(function(){
			flag=flag?0:1;
			var blink=ifrDoc.body.getElementsByTagName("blink");
			for(var i=0;i<blink.length;++i)
				blink[i].style.color=fontColor[flag];
		},800);
	};
</script>

<!-- テキストエリアの代替 //-->
<iframe src="about:blank" frameborder="0" width="500" height="400" style="border:1px solid #000" id="ifr"></iframe>

スクリプトの部分をいじって各種設定を変えられます。

・var defaultText=''; の部分で入力欄のデフォルト文字列を指定しています。(点滅は<blink></blink>で。)

・var fontColor=["",""] の部分で点滅する色を指定しています。

・点滅間隔は前述と同じです。

id:dongwu

たびたびご親切に詳しい回答いただきありがとうございました。

恐縮至極です。使用させてもらいます。

2009/03/05 21:57:29

その他の回答2件)

id:esecua No.1

回答回数510ベストアンサー獲得回数10

ポイント27pt

>TEXTAREA 内の

出来ないと思います。

そもそもHTMLが効かない領域なので。

点滅だけであれば、 


<blink>Hi This is テンメツ</blink>

id:dongwu

ご回答いただき、有難うございます。

やはり無理ですか。

2009/03/05 21:55:27
id:kebo987654 No.2

回答回数38ベストアンサー獲得回数10

ポイント50pt

TEXTAREA内の一部の文字だけを変える方法はたぶんないです。(あったらごめんなさい)

やっぱり点滅させたい部分だけをほかの要素で補うのが一番いいと思いますが、他に方法がないなら<iframe>の編集モードを使うのはどうですか。

<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
	<meta http-equiv="content-script-type" content="text/javascript" />
	<title></title>
	<script type="text/javascript">
		var doc=document;
		var ifrDoc;
		window.onload=function(){
			ifrDoc=frames[0].document;
			ifrDoc.open();
			ifrDoc.write('<html lang="ja"><head><meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /><style type="text/css">p{margin:0}</style><title></title></head><body><p></p></body></html>');
			ifrDoc.close();
			ifrDoc.designMode="on";
			with({flag:false}){
				setInterval(function(){
					var font=ifrDoc.body.getElementsByTagName("font");
					for(var i=0;i<font.length;++i)
						font[i].style.color=flag?"#000":"#f00";
					flag=!flag;
				},800);
			}
		};
		function blinkTextInSelectedRange(line,start,end){
			ifrDoc.execCommand("forecolor",false,"black");
		}
	</script>
</head>
<body>
	<iframe src="about:blank" frameborder="0" width="500" height="400" style="border:1px solid #000" id="ifr"></iframe><br />
	<input type="button" value="blinkTextInSelectedRange" onclick="blinkTextInSelectedRange()" />
</body>
</html>

文字を入力してから文字の一部を選択し「blinkTextInSelectedRange」を押すと点滅します。

点滅間隔は24行目の数字の部分で変えられます(ミリ秒単位)。

id:dongwu

ご回答いただき、ありがとうございました。

2009/03/05 21:56:42
id:kebo987654 No.3

回答回数38ベストアンサー獲得回数10ここでベストアンサー

ポイント70pt

先ほどは変な事を書いていたみたいで申し訳ありませんでした。

いろいろ書きなおしました。

<!-- スクリプト //-->
<script type="text/javascript">
	var doc=document;
	var ifrDoc;
	window.onload=function(){
		
		var defaultText='<blink>点滅させたい文字列</blink>';
		var fontColor=["black","red"];
		
		ifrDoc=frames[0].document;
		ifrDoc.open();
		ifrDoc.write(['<html lang="ja"><head><meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /><style type="text/css">p{margin:0}</style><title></title></head><body><p>',defaultText,'</p><p></p></body></html>'].join(''));
		ifrDoc.close();
		ifrDoc.designMode="on";
		var flag=0;
		setInterval(function(){
			flag=flag?0:1;
			var blink=ifrDoc.body.getElementsByTagName("blink");
			for(var i=0;i<blink.length;++i)
				blink[i].style.color=fontColor[flag];
		},800);
	};
</script>

<!-- テキストエリアの代替 //-->
<iframe src="about:blank" frameborder="0" width="500" height="400" style="border:1px solid #000" id="ifr"></iframe>

スクリプトの部分をいじって各種設定を変えられます。

・var defaultText=''; の部分で入力欄のデフォルト文字列を指定しています。(点滅は<blink></blink>で。)

・var fontColor=["",""] の部分で点滅する色を指定しています。

・点滅間隔は前述と同じです。

id:dongwu

たびたびご親切に詳しい回答いただきありがとうございました。

恐縮至極です。使用させてもらいます。

2009/03/05 21:57:29

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません