【问题标题】:CSS Menu does not appear over flashCSS 菜单不会出现在 Flash 上
【发布时间】:2010-10-16 07:03:30
【问题描述】:

我在页面上有一个下拉/多级 CSS 菜单。然而,菜单并没有出现在我拥有的闪存图表上。 明显的解决方法似乎是设置 wmode:transparent(或 opaque),但这对我不起作用。我还尝试将 CSS 中的 z-level 设置为非常高的值(2000 ) 但这也不起作用。

另外,我正在使用 open-flash-chart-v2 来生成图表。 (虽然我认为这并不重要,但它限制了我传递变量的能力,因为我没有直接使用 embed 或 object 标签)。

<script type="text/javascript">
swfobject.embedSWF("/ofc-library/open-flash-chart.swf", "chart", "100%", "100%", "9.0.0", "expressInstall.swf", {"wmode" : "transparent"});
</script>

Page showing problem(这目前不显示 z-index 尝试修复。)

【问题讨论】:

    标签: css flash drop-down-menu swfobject open-flash-chart


    【解决方案1】:

    wmode 标签设置不正确。

    这是正确的代码:

    <object width="100%" height="100%" style="visibility: visible;" id="chart" data="/ofc-library/open-flash-chart.swf" type="application/x-shockwave-flash"><param value="transparent" name="wmode"/></object>
    

    这是您的代码:

    <object width="100%" height="100%" type="application/x-shockwave-flash" data="/ofc-library/open-flash-chart.swf" id="chart" style="visibility: visible;"><param name="flashvars" value="wmode=transparent"/></object>
    

    具体来说:

    <param name="flashvars" value="wmode=transparent"/>
    

    应该是:

    <param value="transparent" name="wmode"/>
    

    这里是正确的做法(注意参数前的空哈希。wmode 是参数而不是 flashvar):

    swfobject.embedSWF("/ofc-library/open-flash-chart.swf", "chart", "100%", "100%", "9.0.0", "expressInstall.swf", {}, {"wmode" : "transparent"})
    

    【讨论】:

    • 提示:只有在您确实需要 SWF 透明时才使用 wmode transparent。 wmode opaque 应该同样适合您的需求,并且消耗更少的系统资源。它也比 wmode transparent 少得多。
    【解决方案2】:

    因为你使用的是 swfObject,试试这个:

     var so = new SWFObject("/ofc-library/open-flash-chart.swf", "chart", "100%", "100%", "9.0.0", "expressInstall.swf");
     so.addParam("wmode", "transparent");
     so.write("flashcontent");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-21
      • 1970-01-01
      • 2015-04-12
      • 1970-01-01
      • 2012-05-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多