From Bistre Pig, 2 Years ago, written in JavaScript.
Embed
  1. document.addEventListener('DOMContentLoaded', function() {
  2.     // Button alert functionality
  3.     const myButton = document.getElementById('myButton');
  4.  
  5.     myButton.addEventListener('click', function() {
  6.         alert('Hello, World!');
  7.     });
  8.  
  9.     // Typing effect functionality
  10.     const typedTextEl = document.getElementById("typedText");
  11.     const cursorEl = document.getElementById("cursor");
  12.  
  13.     const words = ["a programmer", "a sysadmin", "a developer", "leader", "a secop.", "an administrator."];
  14.     let wordIndex = 0;
  15.     let letterIndex = 0;
  16.     let isDeleting = false;
  17.  
  18.     function type() {
  19.         let delay = isDeleting ? 100 : 200;
  20.  
  21.         if (!isDeleting && letterIndex === words[wordIndex].length) {
  22.             delay = 500; // Wait for 0.5 second before starting the blink effect
  23.             isDeleting = "blink"; // Set isDeleting to "blink" for the blink effect
  24.         } else if (isDeleting === "blink") {
  25.             cursorEl.classList.toggle("blink");
  26.             setTimeout(() => {
  27.                 cursorEl.classList.toggle("blink");
  28.                 setTimeout(() => {
  29.                     cursorEl.classList.toggle("blink");
  30.                     setTimeout(() => {
  31.                         cursorEl.classList.toggle("blink");
  32.                         setTimeout(() => {
  33.                             isDeleting = true; // Start deleting the word
  34.                             type(); // Call type function after the delay
  35.                         }, 2000); // Add a 2-second delay before deleting the first letter
  36.                     }, 500);
  37.                 }, 500);
  38.             }, 500);
  39.             return; // Exit the function to allow blinking effect to complete
  40.         } else if (isDeleting === true && letterIndex === 0) {
  41.             isDeleting = false;
  42.             if (wordIndex < words.length - 1) {
  43.                 wordIndex++;
  44.             } else {
  45.                 wordIndex = 0;
  46.             }
  47.             delay = 500; // Add a delay before starting to type the next word
  48.         }
  49.  
  50.         if (!isDeleting) {
  51.             typedTextEl.textContent += words[wordIndex][letterIndex];
  52.             letterIndex++;
  53.         } else {
  54.             typedTextEl.textContent = typedTextEl.textContent.slice(0, -1);
  55.             letterIndex--;
  56.         }
  57.  
  58.         setTimeout(type, delay);
  59.     }
  60.  
  61.     type();
  62. });
  63.  
captcha