2011-09-07 4 views
1

Мне нужна ссылка для запуска звукового щелчка во Flash AS3. Я использовал функцию .play() вне функции, чтобы подтвердить, что она работает сама по себе. Что мне не хватает, что позволит мне вызвать функцию AS3 из javascript?Вызов функции Flash AS3 из javascript/jQuery

Вот мой HTML

<object width="5px" height="5px"> 
     <param name="movie" value="play_coin_sound/playCoin.swf?v=5"> 
     <param name="wmode" value="transparent"> 
     <embed src="play_coin_sound/playCoin.swf?v=5" width="5px" height="5px"> 
    </object> 

    <span id="play-sound">Play Sound</span> 

Вот мой Javascript

$('#play-sound').click(function(){ playCoin(); }); 

Вот моя функция AS3

var coinSound:Sound = new Sound(); 
coinSound.load(new URLRequest("coin.mp3")); 

function playCoin() { 
    coinSound.play(); 
} 

Любые идеи?

+0

Сделал ExternalInterface.addCallBack ("playCoin", playCoin) ?????? –

ответ

1

Если вы более комфортно с JavaScript, чем ActionScript, вы можете попробовать использовать Soundmanager:

«К оберточной и расширение HTML5 и API Flash Audio, SoundManager 2 обеспечивает надежный межплатформенный звук для JavaScript ».

http://www.schillmania.com/projects/soundmanager2/

Редактировать: выяснить, Soundmanager делает нас флэш, когда необходимый, как и в браузерах, которые не поддерживают HTML5 аудио, или если вы хотите использовать MP3 в браузерах, которые не поддержите его.

+0

Я хотел бы использовать что-то подобное, но мой звук щелчка должен работать в браузерах с поддержкой IE и без html5. – Dan

+1

С SoundManger это будет. Это и есть идея, чтобы сделать «надежный межплатформенный звук». В браузерах без HTML5 вместо этого используется Flash. –

+0

awesome, спасибо! – Dan

0

В следующем блоге объясняется, как использовать класс ExternalInterface для прослушивания вызовов функций javascript, которые будут запускать функции AS3. В нем приводятся примеры направления движения по направлениям.

http://www.viget.com/inspire/bi-directional-actionscript-javascript-communication/

Смежные вопросы