amStock和amChart覆盖Div层

其实这个问题就是如何将Flash置于Div层下

 

在页面中添加amstock的特性很简单,加入下面的代码:

<script type="text/javascript" src="amstock/swfobject.js"></script>
<div id="flashcontent"><strong>You need to upgrade your Flash Player</strong></div>

<script type="text/javascript">
	// <![CDATA[		
	var so = new SWFObject("amstock/amstock.swf", "amstock", "800", "500", "8",
			"#FFFFFF");
	so.addVariable("path", "amstock/");
	so.addVariable("settings_file",	encodeURIComponent("amstock/amstock_settings.xml"));
	so.addVariable("preloader_color", "#999999");
	so.write("flashcontent");
	// ]]>
</script>

 

可以上amChart官网 下载需要的包,方法例子也比较详细。

 

遇见问题先Google了一下“amStock和amChart覆盖Div层”,没有这方面的问题。那么明显amChart提供了解决的方式!上官网看英文资料自己找。

 

不上官网也可以解决这个问题,从上面加载amstock的代码,不难发现其特性:通过JavaScript把Flash加载到Div中;查

amstock/swfobject.js

 

很容易发现SWFObject对象上有一个addParam方法:实现向flash的parameters里加入<param name="wmode" value="transparent">:

	addParam:function(_11,_12){
		this.params[_11]=_12;
	},

 _11:相当于生成的<param name="",value="">中的name

 _12:相当于生成的<param name="",value="">中的value

 

在JavaScript中添加:(我只在IE中测试通过,没有做FF的测试)

<script type="text/javascript">
	// <![CDATA[		
	var so = new SWFObject("amstock/amstock.swf", "amstock", "800", "500", "8",
			"#FFFFFF");
	so.addVariable("path", "amstock/");
	so.addVariable("settings_file",	encodeURIComponent("amstock/amstock_settings.xml"));
	so.addVariable("preloader_color", "#999999");
	/*flash 覆盖div层解决  */
	so.addParam("wmode","transparent");
	so.write("flashcontent");
	// ]]>
</script>

 

体验了一把觉得问题的过程!

 

你可能感兴趣的:(JavaScript,xml,Google,IE,Flash)