Display a typing animation on a monospace text div.

by anoopsuda

HTML

<div id="typeBox"></div>

CSS

#typeBox {
  width: 200px;
  font-family: Arial, sans-serif;
  white-space: normal;
  word-wrap: break-word;
  border-right: 2px solid black;
  padding: 6px;
  min-height: 50px;
}

JavaScript

$(document).ready(function () {
    var text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.";
    
    var i = 0;
    var speed = 30; // typing speed in ms

    function typeEffect() {
        if (i < text.length) {
            $("#typeBox").append(text.charAt(i));
            i++;
            setTimeout(typeEffect, speed);
        } else {
            // stop cursor after typing
            $("#typeBox").css("border-right", "none");
        }
    }

    typeEffect();
});