2013-02-28 3 views
0

다음 코드는 내 데스크톱 브라우저에서는 작동하지만 iPhone의 Safari에서는 작동하지 않으며 경고()를 표시하지만 오디오는 재생하지 않습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?SoundManager 2 및 iPhone

soundManager.url = '/assets/backend/swf/'; 
soundManager.preferFlash = false; 
soundManager.useHTML5Audio = true; 
soundManager.onready(function(){ 
    function playSong(){ 
     soundManager.createSound({ 
      id: 'song_<?=$song->ID?>', 
      url: '/backend/song/play/<?=$song->ID?>', 
      type: 'audio/mp3' 
     }).play(); 
    } 

    $('#play').click(function(){ 
     alert('playSong()'); 
     playSong(); 
    }); 
}); 

답변

0

iPhone에서 "자동 재생"되는 소리가 마음에 들지 않으며 사용자 상호 작용에서 소리가 재생되어야합니다.

귀하의 경우 iOS 브라우저는 사운드를 생성하고 즉시 재생하는 것을 좋아하지 않아야합니다.

이 변형에게 시험을주고 당신을 위해 작동하는지 확인 :

soundManager.url = '/assets/backend/swf/'; 
soundManager.preferFlash = false; 
soundManager.useHTML5Audio = true; 
soundManager.onready(function(){ 
    // Create the sounds here (don't call play) 
    soundManager.createSound({ 
     id: 'song_<?=$song->ID?>', // It is not cool to put PHP here, read below! 
     url: '/backend/song/play/<?=$song->ID?>', 
     type: 'audio/mp3' 
    }); 

    $('#play').click(function(){ 
     var soundId = 'song_<?= $song->ID ?>'; 
     soundManager.play(soundId); 
    }); 
}); 

를 보조 노트로 : 나는 그런 식으로 JS와 PHP를 혼합 상대로하는 조언을 것입니다. "보완"하는 방법이 SoundManager2 예 확인과 같은 일반 MP3 링크 : SoundManager2 documentation

감사와 행운을 빕니다 :은 MP3를 온 클릭한다 무언가에

<a href="blabla.mp3">Click here to play blabla</a> 

!

관련 문제