技術資料

JavaScriptでメッセージを1文字ずつ表示する処理を試してみた

作成日:2023.04.07

ChatGPTが提案したスクリプトを試してみた結果、メッセージを1文字ずつ順に表示する処理が非常に汎用的で便利そうだと思いました。

error この記事は最終更新日から1年以上が経過しています。

chatGPTが教えてくれたスクリプトが汎用性ありそうなので、一旦メモ。

// メッセージを順次表示する関数
function showMessage(message) {
	// メッセージを1文字ずつ区切って、spanタグで囲んで配列に変換する
	var chars = message.split("");
	var spans = $.map(chars, function(char) {
	return "<span>" + char + "</span>";
	});

	// メッセージを順次表示するための再帰関数
	function showNextChar(i) {
	if (i < spans.length) {
		$(".message-box").append(spans[i]);
		setTimeout(function() {
		showNextChar(i+1);
		}, 50); // 50ミリ秒ごとに1文字表示する
	}
	}

	// メッセージボックスをクリアしてから、メッセージを表示する
	$(".message-box").empty();
	showNextChar(0);
}

// テスト用のメッセージを表示する
showMessage("Hello, world!");

1文字ずつ区切った後、 span で囲む処理は必要なのか微妙ではある。

チェックボックス操作のためのjQuery基本メモ

2025.02.05

jQueryを使ってチェックボックスの状態を操作するための基本的なコードをまとめています。フォームやインタラクティブなUIを作成する際に役立つ内容です。

JavaScript jQuery

jQueryでフォームのreadonly属性を操作する方法

2025.02.04

jQueryを使ってフォーム要素のreadonly属性を動的に操作する方法について解説します。readonlyの設定と解除の手順をシンプルにまとめました。

JavaScript jQuery

ダッシュボードのパフォーマンス改善:Ajaxとiframeの実践例

2024.12.11

サーバーサイドですべてを処理してから画面を出力するのではなく、データを分割して効率的に表示する手法をご紹介。Ajaxとiframe、それぞれの特徴や実装例をわかりやすく解説します。

HTML JavaScript jQuery

contenteditableで作るインライン編集システムとデータ送信の仕組み

2024.12.03

contenteditable属性を利用すれば、HTML内のテキストを直接編集できるインターフェースを構築できます。 本記事では、contenteditableを活用したインライン編集機能の実装手法について解説します。 UIの向上を目指す際の参考として。

CSS HTML JavaScript jQuery

阿部辰也へのお仕事の依頼・お問い合わせ

お名前 *必須
会社名
メールアドレス *必須
電話番号
URL
お問い合わせのきっかけ
お問い合わせの内容 *必須
個人情報の取り扱いについて *必須 プライバシーポリシーをご確認いただき、同意いただける場合は「同意する」にチェックをしてください。

keyboard_double_arrow_up
TOP