flash版的中国地图【转载】

来源:互联网 发布:ubuntu开机自启动程序 编辑:程序博客网 时间:2024/06/05 19:39
这是之前发布的中国地图Flash版的优化版,源码位于GoogleCode,提供下载,具备如下的功能: 

1. 按照省份划分行政区域,显示每个省份的详细信息(内容通过XML自定义) 
2. 支持HTML显示 
3. 支持点击省份,打开网页链接 
4. 支持事件监听(AS和JavaScript) 

演示地址: 

www.richbox.net/Files/demo.html 

使用方式: 

将这个Flash插入到网页中并配置相应的参数即可(需要设置地图的标题,和数据源的XML地址,如果你希望Flash回调你的JavaScript方法,请参见第三个参数的配置),推荐使用SWFObject,示例代码: 
<script type=“text/javascript”> 
function eventHandler(e) { 
alert(e.value); 

var s1 = new SWFObject(“ChinaMap.swf”,“ply”,“600″,“500″,“10″,“#FFFFFF”); 
s1.addParam(“allowscriptaccess”,“always”); 
s1.addVariable(“title”,“中国地图”); 
s1.addVariable(“xmlurl”,“d.xml”); 
s1.addVariable(“jsHandler”,“eventHandler”); 
s1.write(“container”); 
</script> 

数据XML的配置示例: 

www.richbox.net/Files/d.xml 

你也可以将这个地图应用到你的Flash或Flex项目中,并可以监听地图点击的Event,代码示例: 

public class ChinaMapDemo extends Sprite 

public function ChinaMapDemo() 

super(); 
var mapLoader:Loader = new Loader(); 
mapLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,init); 
mapLoader.load(new URLRequest(“ChinaMap.swf”)); 
addChild(mapLoader); 

private function init(e:Event):void { 
e.currentTarget.content.loaderInfo.parameters.title = “中国地图”; 
var demoMap:ChinaMap = e.currentTarget.content as ChinaMap; 
demoMap.addEventListener(MapEvent.ITEMCLICK,clickHandler); 

private function clickHandler(e:MapEvent):void { 
trace(e.value); 



你可以从这里下载这个地图的文件: 

code.google.com/p/chinamapforflash/downloads/list 

源码已经提供在Google Code上,你可以随意修改并使用: 

code.google.com/p/chinamapforflash/source/browse/
原创粉丝点击