<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>抠丁...CODING... &#187; AS3</title>
	<atom:link href="http://ice.krystic.com/tag/as3/feed/" rel="self" type="application/rss+xml" />
	<link>http://ice.krystic.com</link>
	<description>工作就是一千行代码，再接一千行代码</description>
	<lastBuildDate>Sat, 25 Jun 2011 01:56:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Flash的浏览器兼容问题</title>
		<link>http://ice.krystic.com/2009/06/flash_compatible/</link>
		<comments>http://ice.krystic.com/2009/06/flash_compatible/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 02:30:14 +0000</pubDate>
		<dc:creator>krystic</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[IE]]></category>
		<category><![CDATA[Maxthon]]></category>
		<category><![CDATA[兼容]]></category>
		<category><![CDATA[浏览器]]></category>

		<guid isPermaLink="false">http://ice.krystic.com/?p=36</guid>
		<description><![CDATA[上周用 Action Script 3 给 178.com 开发了一个基于中国地图的许愿墙的小程序，为了达到需求中描述的要求需要监听 root 的 complete 事件，于是发现了一个很奇怪的浏览器兼容问题，一直以来 Flash 都是打着跨浏览器兼容旗号宣传的，越来越多的兼容问题暴出不知道 Adobe 会不会重视一下。下面说说兼容问题的具体情况，在不同的浏览器里 complete 事的触发是完全不一样的。
1、Internet Explorer
经过测试在 IE 6-7 中 root 的 complete 和 progress 事触发是和我理解完全相同的，首次访问先 progress N 次后 complete，在从浏览器缓存中读取时会直接触发 complete 事件，可能 progress 也会触发一次，但是没有明确的去试验。
2、Firefox
奇怪的事情从这里开始，在 Firefox 浏览器下首次访问是没有问题的，和 IE 的表现完全一样。但是当从缓存中读取 swf 文件时 complete 事件就不会被触发，尝试了各种方法去判断 swf 的加载是否来源于缓存都没成功。更加奇怪的是即使是从本地硬盘加载 progress 事件也会被触发 5-6 次，而且每次的 bytesLoaded 还都有增长，好像一个直实的下载过程。
3、Maxthon
一直我都认为 Maxthon 只不过是 IE 的一个壳，没想到也会出现不同的兼容问题。在饭桶上的情况比 [...]]]></description>
			<content:encoded><![CDATA[<p>上周用 Action Script 3 给 <a title="178.com" href="http://wow.178.com" target="_blank">178.com</a> 开发了一个基于中国地图的许愿墙的小程序，为了达到需求中描述的要求需要监听 root 的 complete 事件，于是发现了一个很奇怪的浏览器兼容问题，一直以来 Flash 都是打着跨浏览器兼容旗号宣传的，越来越多的兼容问题暴出不知道 Adobe 会不会重视一下。下面说说兼容问题的具体情况，在不同的浏览器里 complete 事的触发是完全不一样的。</p>
<blockquote><p><strong>1、Internet Explorer</strong></p>
<p>经过测试在 IE 6-7 中 root 的 complete 和 progress 事触发是和我理解完全相同的，首次访问先 progress N 次后 complete，在从浏览器缓存中读取时会直接触发 complete 事件，可能 progress 也会触发一次，但是没有明确的去试验。</p>
<p><strong>2、Firefox</strong></p>
<p>奇怪的事情从这里开始，在 Firefox 浏览器下首次访问是没有问题的，和 IE 的表现完全一样。但是当从缓存中读取 swf 文件时 complete 事件就不会被触发，尝试了各种方法去判断 swf 的加载是否来源于缓存都没成功。更加奇怪的是即使是从本地硬盘加载 progress 事件也会被触发 5-6 次，而且每次的 bytesLoaded 还都有增长，好像一个直实的下载过程。</p>
<p><strong>3、Maxthon</strong></p>
<p>一直我都认为 Maxthon 只不过是 IE 的一个壳，没想到也会出现不同的兼容问题。在饭桶上的情况比 Firefox 还要奇怪。在第一贞上有一个读取中国地图数据 xml 的过程，会触发一个 URLLoader 的complete 事件。这个过程在 IE 和 Firefox 上都是正常的，在饭桶里第二次访问时 URLLoader 的 complete 事件会比 root 的 complete 事件先触发，因为很多初始化的方法都绑在 root 的 complete 事件上，导致 xml 加载完成后直接报错。</p></blockquote>
<p>Firefox 和 Maxthon 的异常都没 有找到很合理的解决办法，只能用笨方法来处理。另外已知的另一个兼容问题是在 Firefox 下 wmode 设为 transparet 的 swf 文件无法输入中文，这个在 adobe 的技术日问了 <a title="RIAMeeting" href="http://www.riameeting.cn/" target="_blank">RIAMeeting</a> 的同学答复是暂时没有办法 ，无奈呀~</p>
<p style="text-align: center;"><a href="http://zhaoji.178.com"><img class="aligncenter size-full wp-image-43" title="召集魔兽战友，祝福魔兽新生" src="http://ice.krystic.com/wp-content/uploads/2009/06/e69caae6a087e9a298-12.jpg" alt="召集魔兽战友，祝福魔兽新生" width="500" height="407" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://ice.krystic.com/2009/06/flash_compatible/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

