Запускать функцию JavaScript за другой через x Время

Я пытаюсь разработать простую анимацию с использованием SVG и JavaScript. У меня есть «кнопка», которая запускает функцию onclick, чтобы скрыть кнопку «Пуск» и запустить анимацию.

У меня проблемы с функцией временной развертки, в основном у меня есть «пузырьковое поле», в котором отображается текст, как если бы анимация разговаривала с пользователем, что-то вроде диалога, и через некоторое время этот текст исчезает и появляется новый один появляется на его месте.

Проблема в том, что после нажатия кнопки Пуск текст появляется на полсекунды, а затем исчезает. Предполагается, что он появится после нажатия кнопки «Пуск», а затем, например, через 5 секунд, он снова исчезнет.

это то, что я делал до сих пор, все находится внутри тега SVG.

 <rect id = "startButton" style = "cursor:pointer;" x = "200" y = "150" rx = "5" height = "25" width = "80" fill = "white" stroke = "white" stroke-width = "1" onclick = "startAni()"/>
    <text id = "startText" style = "cursor:pointer;" x = "215" y = "170" fill = "black" onclick = "startAni()">START</text>

    <script>
        function startAni(){

            document.getElementById("textLine1").style.display = "inline-block";
            document.getElementById("startButton").style.display = "none";
            document.getElementById("startText").style.display = "none";

            window.setTimeout(function(){textBubble(); 50000})

            function textBubble(){
                document.getElementById("textLine1").style.display = "none";

            }

        }
    </script>

а это "пузырчатая коробка"

<text id = "textLine1" x = "300" y = "175" fill = "white">WHY?</text>

что касается CSS, это то, что я получил для textLine1

#textLine1{
display:none;

}

Я согласен с новыми идеями о том, как это сделать, но я хотел бы работать с JavaScript, SVG или CSS. О JQuery не может быть и речи, но, поскольку я не знаком с ним, я не хотел бы использовать его сейчас.

Заранее спасибо.

Могу я предложить вам узнать больше об обратных вызовах. Это должно очень помочь в этом случае.

Richard 05.12.2018 13:59
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
47
1

Ответы 1

Таймер находится не в том месте, а точнее - в фигурной скобке, закрывающей функцию. Также не нужно думать об этом функции, просто передайте textBubble.

window.setTimeout(textBubble, 50000);

Другие вопросы по теме