FusionCharts或其它flash的div图层总是浮在最上层? (转)

div的图层由div的style中的z-index来决定,z-index是层垂直屏幕的坐标,0最小,越大的话位置越靠上。

由于FusionCharts的图表都放在div中,如果页面还有其他的div,将被FusionCharts的图层挡住。不过设置z-index并不起作用,其他的div仍然被挡住。经过网络上查找,发现原来是这样的:

flash的图默认情况下总是位于最上层,参考下面的文档:

<param name="WMODE" value="transparent">

<param name="wmode" value="Opaque">

<param name="wmode" value="Window">

NOTE: 支持其它浏览器(firefox opera etc.) 则使用 <embed wmode="transparent" />在embed节点中加入wmode值.

window 模式

默认情况下的显示模式,在这种模式下flash player有自己的窗口句柄,这就意味着flash影片是存在于Windows中的一个显示实例,并且是在浏览器核心显示窗口之上的,所以flash只 是貌似显示在浏览器中,但这也是flash最快最有效率的渲染模式。由于他是独立于浏览器的HTML渲染表面,这就导致默认显示方式下flash总是会遮 住位置与他重合的所有DHTML层。

但是大多数苹果电脑浏览器会允许DHTML层显示在flash之上,但当flash影片播放时会出现比较诡异的现象,比如DHTML层像被flash刮掉一块一样显示异常。

Opaque 模式

这是一种无窗口模式,在这种情况下flash player没有自己的窗口句柄,这就需要浏览器需要告诉flash player在浏览器的渲染表面绘制的时间和位置。这时flash影片就不会在高于浏览器HTML渲染表面而是与其他元素一样在同一个页面上,因此你就可 以使用z-index值来控制DHTML元素是遮盖flash或者被遮盖。

Transparent 模式

透明模式,在这种模式下flash player会将stage的背景色alpha值将为0并且只会绘制stage上真实可见的对象,同样你也可以使用z-index来控制flash影片的 深度值,但是与Opaque模式不同的是这样做会降低flash影片的回放效果,而且在9.0.115之前的flash player版本设置wmode=”opaque”或”transparent”会导致全屏模式失效。

了解了各种模式的实现方式和意义在以后的开发中就可以按照具体情况选择设置wmode属性的值了。

 

所以只要将flash的wmode设置成opaque就行了。所以在页面加载FusionCharts图表时,修改参数wmode,在页面上加载flash的js代码中加上这句 chart.addParam("wmode","Opaque");就可以了

时间: 2024-11-02 15:33:18

FusionCharts或其它flash的div图层总是浮在最上层? (转)的相关文章

js实现点击按钮后给Div图层设置随机背景颜色的方法

  这篇文章主要介绍了js实现点击按钮后给Div图层设置随机背景颜色的方法,实例分析了javascript操作页面div元素属性及随机数的相关技巧,需要的朋友可以参考下 本文实例讲述了js实现点击按钮后给Div图层设置随机背景颜色的方法.分享给大家供大家参考.具体如下: 给myDiv设置随机背景颜色,用随机颜色代码赋值给DIV的背景颜色 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

flash遮住div问题的正确解决方法

 在项目中遇到了一个困惑好久的问题,flash遮住div的问题,今天终于解决了 ,需要的朋友可以参考下 在项目中遇到了一个困惑好久的问题,今天终于解决了.其实解决方法很简单.    直接上代码:  代码如下: <script type="text/javascript" src="swfobject.js"></script>  <script type="text/javascript">  // For v

js实现点击按钮后给Div图层设置随机背景颜色的方法_javascript技巧

本文实例讲述了js实现点击按钮后给Div图层设置随机背景颜色的方法.分享给大家供大家参考.具体如下: 给myDiv设置随机背景颜色,用随机颜色代码赋值给DIV的背景颜色 <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=gb2312"/> <title>js设置随机颜色 <

Flash覆盖div(层)解决方案分享

经过多年的8084.html">蓬勃发展,http://www.aliyun.com/zixun/aggregation/12592.html">Flash相关的专业软件不仅有Adobe Flash这样的江湖高手,也出现了一批更加细分功能的奇侠隐士,其中不乏有中国本土的Flash软件设计者-硕思软件. Flash是美国Macromedia公司所设计的一种二维动画软件.通常包括Macromedia Flash,用于设计和编辑Flash文档,以及Macromedia Flash

避免select控件和Flash挡住div层

1. 避免Flash挡住Div层的方式:增加 <param name="wmode" value="transparent">,另外增加<embed wmode="transparent" ...其他选项>2. select和flash挡住div,可以采取移除节点的方式防止挡住3. select和flash采用display:none的方式防止挡住4. 在select和flash上面加一层隐藏的iframe对象,因为ifr

FLASH的场景,图层(lawyer)和层(level)的理解

对初学者来说,FLASH(这里一FLASH8为例)的场景.图层(lawyer)和层(level)很容易引起困惑的3个概念,今天看到大家在讨论涉及这个主题,我觉得有必要做一个比较系统的研究.不足之处希望大家指出,希望你起到一个抛砖引玉的作用. FLASH动画的各个对象的位置关系是按照一定的层状结构来呈现的.他的根是场景.有多个场景的情况,实际上每个场景是独立的动画,FLASH是通过设置各个场景播放顺序来把各个场景的动画逐个连接起来,因而我们看到的动画播放是连续的.在编辑时,每个场景的实例是不可以在

flash遮住div问题的正确解决方法_javascript技巧

在项目中遇到了一个困惑好久的问题,今天终于解决了.其实解决方法很简单. 直接上代码: 复制代码 代码如下: <script type="text/javascript" src="swfobject.js"></script> <script type="text/javascript"> // For version detection, set to min. required Flash Player v

关于flash遮盖div浮动层的解决方法_javascript技巧

网上的解决方案: From:http://codingforums.com/showthread.php?t=95109 (a) place Flash embed script in <div> container (I use SWFObject.js)[将flash嵌入脚本放到一个div容器中] (b) add wmode=transparent to Flash embed script[增加wmode=transparent 到flash嵌入脚本] (c) set <div i

FLASH遮挡DIV浮动层解决方案兼容IE FF Chrome

在建设网站的时候经常会遇到 ,Div层被flash挡住或者DIV层被视频文件挡住的情况 在使用z-index无效果,终于搜到一种很简洁的答案,先记录下来方便碰到同样问题下次解决. Flash的解决方法,代码如下: <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000″ codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.