代码自动加载flash,但有些用户禁用flash(像图片一样红x),
或者是Safari浏览器  不显示flash为了解决问题,所以想先判断flash是否成功显示,如果显示不成功,就替换成图片不知如何判断flash是否成功显示了?
最好是用js判断

解决方案 »

  1.   

    抄袭的,判断是否安装了flash以及版本号,不一定满足要求
    <script type="text/javascript">function flashChecker()
    {
    var hasFlash=0;    //是否安装了flash
    var flashVersion=0;  //flash版本if(document.all)
    {
    var swf = new ActiveXObject('ShockwaveFlash.ShockwaveFlash'); 
    if(swf) {
    hasFlash=1;
    VSwf=swf.GetVariable("$version");
    flashVersion=parseInt(VSwf.split(" ")[1].split(",")[0]); 
    }
    }else{
    if (navigator.plugins && navigator.plugins.length > 0)
    {
    var swf=navigator.plugins["Shockwave Flash"];
    if (swf)
        {
    hasFlash=1;
           var words = swf.description.split(" ");
           for (var i = 0; i < words.length; ++i)
    {
             if (isNaN(parseInt(words[i]))) continue;
             flashVersion = parseInt(words[i]);
    }
    }
    }
    }
    return {f:hasFlash,v:flashVersion};
    }var fls=flashChecker();</script>
      

  2.   

    js判断flash加载完毕
    <embed src="http://ad.csdn.net/adsrc/ibm-caq4-leadership-newshomepage-760-90-1106.swf" />
    <script type="text/javascript">
    var flash = document.getElementsByTagName('embed')[0];
    var interval = setInterval(function(){
    try{
    if( flash.IsPlaying() ){
    callBack && callBack(); 
    clearInterval(interval); 
    }
    }catch(ex){} 
    }, 30);
    var callBack = function(){ 
    alert('loaded');
    };
    </script>
      

  3.   

    IE 选项 管理加载   禁用flash
    如何判断用户是否禁用flash楼上试了 效果都不行
      

  4.   

    换一个方法呢
    在flash中的某一关键帧加上动作,然后给网页传个参数,如果没有这个参数,就将flash换成gif。但是怎么判断是否有这个参数??
      

  5.   

    这肯定不行。刚刚打开网页flash还没加载,肯定不存在调用函数与什么参数,何来判断?如果本身flash不能加载或者禁用,那就是永远没有flash与调用函数,又怎么可能调用?========反过来,先在flash的位置放张背景图片刚好与flash一样大,flash加载完了刚刚就好挡住它。加载不成功就看背景图片好了。
      

  6.   

    如果这样的话,上面方法还是不变。你先把flash的标签添加上css透明或者隐藏。在flash里调用一个js参数让它自己不透明或不隐藏即可。有关flash与js通信方法参看:http://www.scscms.com/article/2011-8/1223385588.html
      

  7.   


     <script language="JavaScript">  
            var movie = document.getElementById(flash); 
            try 
            {
                movie.PercentLoaded(); 
            }
            catch(e)
            {      
                document.getElementById(flash).style.display="none";
                document.getElementById(图片).style.display="";
            }
        </script>