| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- function getRandomChar() {
- var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567890";
- var randomChar = chars.charAt((Math.floor(Math.random() * chars.length)));
- return randomChar;
- }
- function renderLogo(logoId, name, horizontalPadding, verticalPadding, logoUrl="#") {
- var logoDiv = document.getElementById(logoId);
- var paddingLength = ((horizontalPadding * 2 + name.length) * verticalPadding) + horizontalPadding;
- console.log(paddingLength);
- var currentText = logoDiv.innerText;
- var currentLength = logoDiv.textContent.replace(/\n/g, "").length;
-
- setTimeout(function() {
- if (currentLength < paddingLength * 2 + name.length) {
- if (currentLength > 0 && currentLength % (horizontalPadding * 2 + name.length) == 0) {
- logoDiv.innerHTML += "<br>";
- }
- if (currentLength == paddingLength) {
- var textSpan = document.createElement("a");
- textSpan.href= logoUrl;
- logoDiv.appendChild(textSpan);
- }
- if (currentLength < paddingLength || currentLength >= paddingLength + name.length) {
- logoDiv.innerHTML += getRandomChar();
- } else {
- var logoLength = currentLength - paddingLength;
- var textSpan = logoDiv.querySelector("a");
- textSpan.textContent += name.charAt(logoLength);
- }
- renderLogo(logoId, name, horizontalPadding, verticalPadding, logoUrl);
- }
- }, 80)
- }
- function initLogo(targetId, name, padX=4, padY=2, logoUrl="#") {
- var target = document.getElementById(targetId);
- var str = "";
- var str2 = "";
- for (i=0; i < (name.length + (padX * 2)); i++) {
- str += "x";
- }
- for (i=0; i < (padY * 2) + 1; i++ ){
- str2 += str + "<br>";
- }
- var tmpSpan = document.createElement("span");
- tmpSpan.classList.add("hidden");
- tmpSpan.innerHTML = str2;
- target.appendChild(tmpSpan);
- var logoWidth = tmpSpan.offsetWidth;
- var logoHeight = tmpSpan.offsetHeight;
- target.removeChild(tmpSpan);
- target.style.width = (logoWidth + 1) + "px";
- target.style.marginLeft = ((logoWidth / 2) * -1) + "px";
- target.style.height = (logoHeight + 1) + "px";
- target.style.marginTop = ((logoHeight / 2) * -1) + "px";
- renderLogo(targetId, name, padX, padY, logoUrl);
- }
|