Лучший способ - получить текущее время видео YouTube через каждые секунды.
Вы можете использовать setInterval для вызова функции каждую секунду.В этой функции получите текущее время видео на YouTube и основываясь на том, что вы делаете. Я думаю, что это надежный способ
Пожалуйста, проверьте этот ответ. Из ответа вы можете понять, как получить текущийвремя воспроизведения с YouTube плеера.Надеюсь, это поможет вам
РЕДАКТИРОВАТЬ
Полагаю, вы хотите показать скрытый контент через 30 секунд видео.Для этого вы должны запрограммировать текущее время видео YouTube. Чтобы узнать текущее время, вы должны использовать API YouTube. Вы можете получить больше информации об API. Вы получите больше информации об API с здесь
Как только вы получите текущее время (вы получите его в секундах), если вы используете API, вы можете использовать следующую логику, чтобы показать скрытый контент
<script type="text/javascript">
var timerForLoadingResult= setInterval(showIt,1000);//call the fnction in every seconds.
function showIt() {
var currentTime=GetCurrentYoutubeTime(); // this function must return a current time in seconds
if(currentTime>=30) // i guess u need to show up after30 th second
{
document.getElementById("hid").style.display = "block";
clearInterval(timerForLoadingResult); //it will clear the timer, so the function will not excecute again
}
}
function GetCurrentYoutubeTime()
{
// fetch youtube video time using api . and return that value
}
</script>