flex FDS动态生成SWF覆盖DIV问题的解决。

来源:互联网 发布:软件测试的证书 编辑:程序博客网 时间:2024/05/18 13:48

 

当请求一个部署好的FDS的服务器上mxml文件时,FDS会向请求端发送一份包含swf的html代码,html中的<object>标签包含了swf影片在页面上的显示属性,增加<param name="wmode" value="opaque" />属性设置flash置底即可。

解决方法:

修改flex/jars/flex-webtier.jar中

flex-webtier/flex/server/j2ee/filemanager/detection-kit/AC_OETags.js

修改如下:

function AC_Generateobj(objAttrs, params, embedAttrs)
{
    var str = '';
    if (isIE && isWin && !isOpera)
    {
    str += '<object ';
    for (var i in objAttrs)
     str += i + '="' + objAttrs[i] + '" ';
    for (var i in params)
     str += '><param name="' + i + '" value="' + params[i] + '" /> ';
*************************************************************************************************
*  str += '<param name="wmode" value="opaque" /> ';                                *
* 增加swf参数设置                                                                               *
*************************************************************************************************
    str += '></object>';
    } else {
    str += '<embed ';
    for (var i in embedAttrs)
     str += i + '="' + embedAttrs[i] + '" ';
    str += '> </embed>';
    }

    document.write(str);
}

这个代码,IE可行,在FF下,失效。要想在FF下起作用,还要用在<object>标签中 里加个 wmode="opaque"

原创粉丝点击