Created CV Section #6

Merged
rodude123 merged 17 commits from cv into master 2021-08-31 18:53:13 +01:00
Showing only changes of commit 5e2d42b409 - Show all commits

View File

@ -39,46 +39,56 @@ window.onscroll = () =>
});
};
document.addEventListener('DOMContentLoaded', () =>
document.addEventListener("DOMContentLoaded", () =>
{
// array with texts to type in typewriter
var dataText = ["full stack developer", "web designer", "student", "gamer", "drummer"];
// type one text in the typwriter
// keeps calling itself until the text is finished
function typeWriter(text, i, fnCallback) {
function typeWriter(text, i, fnCallback)
{
// chekc if text isn't finished yet
if (i < (text.length)) {
if (i < (text.length))
{
// add next character to h1
document.querySelector("header div h1").innerHTML = text.substring(0, i+1) +'<span aria-hidden="true">_</span>';
document.querySelector("header div h1").innerHTML = text.substring(0, i + 1) + "<span aria-hidden=\"true\">_</span>";
// wait for a while and call this function again for next character
setTimeout(function() {
setTimeout(function ()
{
typeWriter(text, i + 1, fnCallback)
}, 100);
}
// text finished, call callback if there is a callback function
else if (typeof fnCallback == 'function') {
else if (typeof fnCallback == "function")
{
// call callback after timeout
setTimeout(fnCallback, 700);
}
}
// start a typewriter animation for a text in the dataText array
function StartTextAnimation(i) {
if (typeof dataText[i] === 'undefined'){
setTimeout(function() {
function StartTextAnimation(i)
{
if (typeof dataText[i] === "undefined")
{
setTimeout(function ()
{
StartTextAnimation(0);
}, 1500);
// StartTextAnimation(0);
}
else if (i < dataText[i].length) {
else if (i < dataText[i].length)
{
// text exists! start typewriter animation
typeWriter(dataText[i], 0, function(){
typeWriter(dataText[i], 0, function ()
{
// after callback (and whole text has been animated), start next text
setTimeout(StartTextAnimation, 1500, i + 1);
});
}
}
// start the text animation
StartTextAnimation(0);
});