为了与JavaScript中的ActionScript进行通信,我们必须在Flash影片嵌入的文档中引用Flash对象。就像这样:
function getFlashObject(flashMovieId) {
var isIE = navigator.appName.indexOf("Microsoft") != -1;
return (isIE) ? window[flashMovieId] : document[flashMovieId];
}
其中flashMovieId参数是Flash影片的标识符 - object 标记中的id属性或 embed 标记中的name属性:
<object CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="550" height="400" id="flashMovieId">
<param name="movie" value="flMovie.swf">
<embed src="flMovie.swf" width="550" height="400" name="flashMovieId">
</embed>
</object>
获取对Flash对象的引用涉及用户代理字符串检测。您能否请说明为什么需要它以及是否有办法通过用户代理字符串跳过这种浏览器检测方法?