S
S
Shimpanze2018-11-20 15:05:17
MP3
Shimpanze, 2018-11-20 15:05:17

How to make iframe repeat mp3 inside itself?

Good afternoon!

There is a code:

<iframe style="display: none;" src="../music/test.mp3" allow="autoplay"></iframe>


What attribute is needed here to make the song spin in a circle?

Thank you!

Answer the question

In order to leave comments, you need to log in

2 answer(s)
V
Vladimir Brumer, 2019-03-15
@Shimpanze

<span id="EngWorksPlayer" style="display:none;"></span>

<script type="text/javascript">
  var EngWorksPlayer=document.getElementById('EngWorksPlayer'),EngWorksPlayerLinks='ссылка';
  window.onload=(function(){
    EngWorksPlayer.innerHTML='<audio autoplay="autoplay" loop="loop"><source src="'+EngWorksPlayerLinks+'"></audio>';
  });
</script>

if suddenly you still need an iframe, then you can do something like this:
<iframe id="IFR" style="display: none;" src="ссылка" allow="autoplay"></iframe>

<script type="text/javascript">
var IFR=document.getElementById('IFR'),audio=new Audio();audio.src="ссылка на аудио";//создаем объект audio и указываем путь к треку
audio.addEventListener('loadedmetadata',function(){//обработчик для получения метаинфы о треке
  var timerId=setInterval(function(){
    IFR.setAttribute("src","ссылка на аудио");
  },audio.duration*1000+444);//получив длину аудифайла переводим в милисеки добавляем к ней немного и с этим промежутком делаем замену атрибута на тот же самый тем самым файл будет крутиться по кругу
});
</script>

but there is a flaw here too ... The explorer does not reproduce the iframe, it sees it as a document. In this case, you can combine the options by first checking the user's browser via php:
$user_agent=$_SERVER['HTTP_USER_AGENT'];//получаем информацию о браузере
if(stristr($user_agent,'Trident/')){// если IE, т.е в информации присутствует совпадение текст «Trident/» то:
  echo	'<audio id="AuDio" autoplay="autoplay" loop="loop"><source src="ссылка"></audio>',
        '<script type="text/javascript">',
        'window.onload=(function(){',
          'document.getElementById("AuDio").play();',
          '});',
      '</script>';
}else{// в остальных случаях
  echo	'<iframe id="IFR" style="display: none;" src="ссылка" allow="autoplay"></iframe>',
      '<script type="text/javascript">var IFR=document.getElementById(\'IFR\'),audio=new Audio();audio.src="ссылка";',
        'audio.addEventListener(\'loadedmetadata\',function(){',
          'setInterval(function(){',
            'IFR.setAttribute("src","ссылка");',
          '},audio.duration*1000+444);',
        '});',
      '</script>';	
}

A
Alexander, 2018-11-20
@NeiroNx

зачем iframe если сейчас везде поддерживается audio

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question