Я запускаю функцию Actionscript через javascript через ExternalInterface.
<script type="text/javascript">
var flashvars = {};
var params = {};
params.allowscriptaccess = "always";
var attributes = {};
swfobject.embedSWF("/img/tts_langx.swf", "tts_lang", "1", "1", "9.0.0", false, flashvars, params, attributes);
</script>
Однако, когда флэш-память не загружается или проигрыватель недоступен, все ломается.Поэтому я хочу проверить наличие флэш-памяти и, если она по какой-то причине не загружена, уничтожить только эту часть процесса.
Я делаю проверку через:
function thisMovie(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName];
} else {
return document[movieName];
}
}
, а затем я делаю:
if(thisMovie('myFlash').theActionscriptFunction==null){...}else{}
, что очень уродливо, но работает в Firefox и Safari, а нев Chrome.
Как я могу сделать эту проверку наилучшим образом и узнать для всех браузеров, доступна ли флэш-память для функций в ней?