<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="css/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>商创技术博客</title><link>http://www.shch8.com/blog/</link><description></description><generator>RainbowSoft Studio Z-Blog 1.8 Arwen Build 81206</generator><language>zh-CN</language><copyright>Copyright shch8.com</copyright><pubDate>Wed, 01 Dec 2010 16:25:40 +0800</pubDate><item><title>快速而高效地搜索XML数据</title><author>wzh3847@sina.com (望月狼)</author><link>http://www.shch8.com/blog/post/83.html</link><pubDate>Mon, 15 Nov 2010 16:52:33 +0800</pubDate><guid>http://www.shch8.com/blog/post/83.html</guid><description><![CDATA[<p>项目组中,大多数人喜欢使用XML作为数据交接桥梁，常会碰到对XML进行大批量搜索与提取，比如下面的XML文件：</p><div class="codeText"><div class="codeHead">XML/HTML代码</div><ol class="dp-xml">    <li class="alt"><span><span>var&nbsp;</span><span class="attribute">xml:XML</span><span>=</span><span class="tag">&lt;</span><span class="tag-name">xml</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li>    <li><span class="tag">&lt;</span><span class="tag-name">item</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;6&quot;</span><span>&nbsp;</span><span class="attribute">title</span><span>=</span><span class="attribute-value">&quot;商创博客&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span class="tag">&lt;</span><span class="tag-name">item</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;12&quot;</span><span>&nbsp;</span><span class="attribute">title</span><span>=</span><span class="attribute-value">&quot;商创技术&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>    <li><span class="tag">&lt;</span><span class="tag-name">item</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;43&quot;</span><span>&nbsp;</span><span class="attribute">title</span><span>=</span><span class="attribute-value">&quot;shch8.com&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span class="tag">&lt;</span><span class="tag-name">item</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;26&quot;</span><span>&nbsp;</span><span class="attribute">title</span><span>=</span><span class="attribute-value">&quot;webBase&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>    <li><span class="tag">&lt;</span><span class="tag-name">item</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;17&quot;</span><span>&nbsp;</span><span class="attribute">title</span><span>=</span><span class="attribute-value">&quot;shch8.com/webbase&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span class="tag">&lt;/</span><span class="tag-name">xml</span><span class="tag">&gt;</span><span>;&nbsp;&nbsp;</span></li></ol></div><p>我想提取id大于20的数据，你会怎么做？</p><p>用for和 if 循环判断id&gt;20，如果你真是这样做的，看到这篇blog因该感到幸运了！</p><p>我有3000条数据，你还用for的话，那是个很吃力的过程了。</p><p>1.AS3的XML实现了E4X的处理标准，配合XML与XMLList的取值方法可以很灵活地操作XML数据，正确的做法因该是：</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span>trace(xml.child(</span><span class="string">&quot;*&quot;</span><span>).(</span><span class="annotation">@id</span><span>&gt;</span><span class="number">20</span><span>)) &nbsp;&nbsp;</span></span></li>    <li><span class="comment">/*输出 </span>&nbsp;</li>    <li class="alt"><span><span class="comment">&lt;item&nbsp;id=&quot;43&quot;&nbsp;title=&quot;shch8.com&quot;/&gt; </span>&nbsp;</span></li>    <li><span><span class="comment">&lt;item&nbsp;id=&quot;26&quot;&nbsp;title=&quot;webBase&quot;/&gt; </span>&nbsp;</span></li>    <li class="alt"><span><span class="comment">*/</span><span>&nbsp;&nbsp;</span></span></li></ol></div><p>当然，也可以这样写</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span>trace(xml.item.</span><span class="annotation">@id</span><span>&gt;</span><span class="number">20</span><span>)&nbsp;&nbsp;</span></span></li></ol></div><p>使用XML结点名取值，结果是一样的。</p><p>2.接下来，我们还可以针对title进行搜索，代码：</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span class="keyword">var</span><span>&nbsp;xml:</span><span class="keyword">XML</span><span>=&lt;xml&gt; &nbsp;&nbsp;</span></span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;6&quot;</span><span>&nbsp;title=</span><span class="string">&quot;商创博客&quot;</span><span>/&gt; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;item&nbsp;id=</span><span class="string">&quot;12&quot;</span><span>&nbsp;title=</span><span class="string">&quot;商创技术&quot;</span><span>/&gt; &nbsp;&nbsp;</span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;43&quot;</span><span>&nbsp;title=</span><span class="string">&quot;shch8.com&quot;</span><span>/&gt; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;item&nbsp;id=</span><span class="string">&quot;26&quot;</span><span>&nbsp;title=</span><span class="string">&quot;webBase&quot;</span><span>/&gt; &nbsp;&nbsp;</span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;17&quot;</span><span>&nbsp;title=</span><span class="string">&quot;shch8.com/webbase&quot;</span><span>/&gt; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;/xml&gt;; &nbsp;&nbsp;</span></li>    <li><span class="keyword">var</span><span>&nbsp;searchKey:</span><span class="keyword">String</span><span>=</span><span class="string">&quot;商创&quot;</span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>trace(xml.child(</span><span class="string">&quot;*&quot;</span><span>).(</span><span class="annotation">@title</span><span>.indexOf(searchKey)!=-</span><span class="number">1</span><span>)); &nbsp;&nbsp;</span></li>    <li><span class="comment">/*输出 </span>&nbsp;</li>    <li class="alt"><span><span class="comment">&lt;item&nbsp;id=&quot;6&quot;&nbsp;title=&quot;商创博客&quot;/&gt; </span>&nbsp;</span></li>    <li><span><span class="comment">&lt;item&nbsp;id=&quot;12&quot;&nbsp;title=&quot;商创技术&quot;/&gt; </span>&nbsp;</span></li>    <li class="alt"><span><span class="comment">*/</span><span>&nbsp;&nbsp;</span></span></li></ol></div><p>3.或许你会说我太土了，用indexOf进行字符判断，为什么不用正则表太式？是的，可以这样写</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span>xml.child(</span><span class="string">&quot;*&quot;</span><span>).(pattern.test(</span><span class="annotation">@title</span><span>));&nbsp;&nbsp;</span></span></li></ol></div><p>但这并不是RegExp可识别的方法，我们再改下，写个函数代理判断</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span class="keyword">var</span><span>&nbsp;xml:</span><span class="keyword">XML</span><span>=&lt;xml&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;6&quot;</span><span>&nbsp;title=</span><span class="string">&quot;商创博客&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;item&nbsp;id=</span><span class="string">&quot;12&quot;</span><span>&nbsp;title=</span><span class="string">&quot;商创技术&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;43&quot;</span><span>&nbsp;title=</span><span class="string">&quot;shch8.com&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;item&nbsp;id=</span><span class="string">&quot;26&quot;</span><span>&nbsp;title=</span><span class="string">&quot;webBase&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;17&quot;</span><span>&nbsp;title=</span><span class="string">&quot;shch8.com/webbase&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;/xml&gt;;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="keyword">var</span><span>&nbsp;searchKey:</span><span class="keyword">String</span><span>=</span><span class="string">&quot;shch&quot;</span><span>&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span class="keyword">var</span><span>&nbsp;pattern:</span><span class="keyword">RegExp</span><span>=</span><span class="keyword">new</span><span>&nbsp;</span><span class="keyword">RegExp</span><span>(searchKey);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>trace(xml.child(</span><span class="string">&quot;*&quot;</span><span>).(regTest(</span><span class="annotation">@title</span><span>))); &nbsp;&nbsp;</span></li>    <li class="alt"><span class="keyword">function</span><span>&nbsp;regTest(obj:</span><span class="keyword">String</span><span>):</span><span class="keyword">Boolean</span><span>{&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="keyword">return</span><span>&nbsp;pattern.test(obj)&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="comment">/*输出&nbsp;&nbsp; </span>&nbsp;</li>    <li class="alt"><span><span class="comment">&lt;item&nbsp;id=&quot;43&quot;&nbsp;title=&quot;shch8.com&quot;/&gt;&nbsp;&nbsp; </span>&nbsp;</span></li>    <li><span><span class="comment">&lt;item&nbsp;id=&quot;17&quot;&nbsp;title=&quot;shch8.com/webbase&quot;/&gt;&nbsp;&nbsp; </span>&nbsp;</span></li>    <li class="alt"><span><span class="comment">*/</span><span>&nbsp;&nbsp;&nbsp;&nbsp;</span></span></li></ol></div><p>4.最后，我们取到的数据，都是xmlList类型，你在使用时如果喜欢用XML来操作，那可以再创建一个XML对象</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span>AS3代码 &nbsp;&nbsp;</span></span></li>    <li><span class="keyword">var</span><span>&nbsp;xml:</span><span class="keyword">XML</span><span>=&lt;xml&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;item&nbsp;id=</span><span class="string">&quot;6&quot;</span><span>&nbsp;title=</span><span class="string">&quot;商创博客&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;12&quot;</span><span>&nbsp;title=</span><span class="string">&quot;商创技术&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;item&nbsp;id=</span><span class="string">&quot;43&quot;</span><span>&nbsp;title=</span><span class="string">&quot;shch8.com&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&lt;item&nbsp;id=</span><span class="string">&quot;26&quot;</span><span>&nbsp;title=</span><span class="string">&quot;webBase&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&lt;item&nbsp;id=</span><span class="string">&quot;17&quot;</span><span>&nbsp;title=</span><span class="string">&quot;shch8.com/webbase&quot;</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&lt;/xml&gt;;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span class="keyword">var</span><span>&nbsp;searchKey:</span><span class="keyword">String</span><span>=</span><span class="string">&quot;shch&quot;</span><span>&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="keyword">var</span><span>&nbsp;pattern:</span><span class="keyword">RegExp</span><span>=</span><span class="keyword">new</span><span>&nbsp;</span><span class="keyword">RegExp</span><span>(searchKey);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span class="keyword">var</span><span>&nbsp;getXML:</span><span class="keyword">XML</span><span>=&lt;</span><span class="keyword">data</span><span>/&gt;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>getXML.appendChild(xml.child(</span><span class="string">&quot;*&quot;</span><span>).(regTest(</span><span class="annotation">@title</span><span>)))&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>trace(getXML)&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="keyword">function</span><span>&nbsp;regTest(obj:</span><span class="keyword">String</span><span>):</span><span class="keyword">Boolean</span><span>{&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span class="keyword">return</span><span>&nbsp;pattern.test(obj)&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span class="comment">/*输出&nbsp;&nbsp; </span>&nbsp;</li>    <li><span><span class="comment">&lt;data&gt; </span>&nbsp;</span></li>    <li class="alt"><span><span class="comment">&nbsp;&nbsp;&lt;item&nbsp;id=&quot;43&quot;&nbsp;title=&quot;shch8.com&quot;/&gt; </span>&nbsp;</span></li>    <li><span><span class="comment">&nbsp;&nbsp;&lt;item&nbsp;id=&quot;17&quot;&nbsp;title=&quot;shch8.com/webbase&quot;/&gt; </span>&nbsp;</span></li>    <li class="alt"><span><span class="comment">&lt;/data&gt; </span>&nbsp;</span></li>    <li><span><span class="comment">*/</span><span>&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li></ol></div><p>小技巧也会有大作用！</p>]]></description><category>AS3</category><comments>http://www.shch8.com/blog/post/83.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=83</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=83&amp;key=b240b416</trackback:ping></item><item><title>FlashDevelop中乱码问题</title><author>wzh3847@sina.com (望月狼)</author><link>http://www.shch8.com/blog/post/82.html</link><pubDate>Fri, 08 Oct 2010 08:58:10 +0800</pubDate><guid>http://www.shch8.com/blog/post/82.html</guid><description><![CDATA[<p>FD的乱码问题,很多人都碰到过,因为FlashBuilder与Flash开发工具默认创建的代码都是使用UTF-8编码制.</p><p>解决这个问题只要在FD中设置使用编码制就行了,有些人会在File/Encodeing中设置不会起作用,因为这是文件编码制设置</p><p>正确的做法是在项目setting中设置,Tools/Programes Settings...或按F10,在主要设置项Main-FlashDevelop的Mics组中,将Default CodePage 和 Fallback CodePage 两项设置为UTF-8,关闭FD重新打开,一切OK了.</p><p><img title="" alt="" src="http://www.shch8.com/blog/upload/FD_seting.jpg" onload="ResizeImage(this,520)" /></p>]]></description><category>思想</category><comments>http://www.shch8.com/blog/post/82.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=82</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=82&amp;key=2c401ef7</trackback:ping></item><item><title>火热七月于Flash交流大会上参讲webBase</title><author>wzh3847@sina.com (望月狼)</author><link>http://www.shch8.com/blog/post/81.html</link><pubDate>Fri, 30 Jul 2010 16:10:03 +0800</pubDate><guid>http://www.shch8.com/blog/post/81.html</guid><description><![CDATA[<p><font size="2">&nbsp;&nbsp;&nbsp; 酷暑七月炎炎夏日,前往广州参加盛大网络主办的Flash开发者交流大会,尽管烈日当头还是挡不住广州Flash开发者的热心,近两百人参加了会场.</font></p><p><font size="2"><img title="" alt="" onload="ResizeImage(this,520)" src="http://www.shch8.com/blog/upload/j4.jpg" /></font></p><p><font size="2">&nbsp;&nbsp;&nbsp; 这次会场主要是讲了基于IE的开发框架<a target="_blank" href="http://www.shch8.com/webbase/">webBase</a>,已经开源半年多了,认识的人却还不是很多,也是我一直懒于升级新功能,一份好的框架要得到大家的接受需要时间与毅立.不过,这次演讲反应很好,一些认识与不认识webBase的朋友从新见识了下webBase能为我们做什么.</font></p><p><img title="" alt="" onload="ResizeImage(this,520)" src="http://www.shch8.com/blog/upload/czhc.jpg" /></p><p>&nbsp;</p><p><strong>&middot;　webBase讲解视频:</strong></p><p><embed width="480" align="9" src="http://player.ku6.com/refer/_jBgTzgU36lYzCkJ/v.swf" height="400" type="application/x-shockwave-flash" quality="high" allowscriptaccess="always" allowfullscreen="true"></embed></p><p><strong style="display: block; margin: 12px 0px 4px">&middot;　webBase讲解内容PPT文件:</strong><object id="__sse4847487" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" changeslideinflash="function () {return eval(instance.CallFunction(&quot;&lt;invoke name=\&quot;&quot;+name+&quot;\&quot; returntype=\&quot;javascript\&quot;&gt;&quot; + __flash__argumentsToXML(arguments,0) + &quot;&lt;/invoke&gt;&quot;));}"><param value="11245" name="_cx" /><param value="9393" name="_cy" /><param value="" name="FlashVars" /><param value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=webbase-100727031205-phpapp01&amp;stripped_title=web-base" name="Movie" /><param value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=webbase-100727031205-phpapp01&amp;stripped_title=web-base" name="Src" /><param value="Window" name="WMode" /><param value="-1" name="Play" /><param value="-1" name="Loop" /><param value="High" name="Quality" /><param value="LT" name="SAlign" /><param value="-1" name="Menu" /><param value="" name="Base" /><param value="always" name="AllowScriptAccess" /><param value="NoScale" name="Scale" /><param value="0" name="DeviceFont" /><param value="0" name="EmbedMovie" /><param value="" name="BGColor" /><param value="" name="SWRemote" /><param value="" name="MovieData" /><param value="1" name="SeamlessTabbing" /><param value="0" name="Profile" /><param value="" name="ProfileAddress" /><param value="0" name="ProfilePort" /><param value="all" name="AllowNetworking" /><param value="true" name="AllowFullScreen" /></object></p><p>&nbsp;</p>]]></description><category>思想</category><comments>http://www.shch8.com/blog/post/81.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=81</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=81&amp;key=79384bbf</trackback:ping></item><item><title>解决发布后的swf版本控制问题</title><author>lbynet@homail.com (lby)</author><link>http://www.shch8.com/blog/post/80.html</link><pubDate>Thu, 22 Jul 2010 15:50:04 +0800</pubDate><guid>http://www.shch8.com/blog/post/80.html</guid><description><![CDATA[<p>本文主要针对社区游戏（中、小游戏）和flash中型以上全站的开发。<br />swf、图片、视频、XML、压缩文件等（非动态路径）常用素材被加载后，都会被IE缓存下来，<br />再次使用就直接从缓存中读取这些素材，这部分通常被称作静态文件。在游戏发布上线后，我们经常会碰到需要强制更新这些文件，<br />它们可能是游戏中的某一具体模块、游戏素材、界面皮肤等，或是我们需要添加新的功能模块。<br />这个时候就需要有一个版本控制的方案，对这些素材进行版本管理。</p><p>下面我们先来参考下QQ是怎么做的，比如QQ农场，从我的观察中发现，它使用了两种方式</p><p>（1）文件名+版本号，区别对待不同的版本控制，有设定值后会加上_v_x的后缀名</p><p>比如其中的loading.swf, 被命名为：loading_v_14.swf <br />还有加载主文件 main.swf, 被命名为:Main_v_60.swf&nbsp; 等。</p><p>参考地址:<br /><a href="http://farm.xiaoyou.qq.com/cgi-bin/cgi_farm_ini_run?v=68">http://farm.xiaoyou.qq.com/cgi-bin/cgi_farm_ini_run?v=68</a><br /><a href="http://farm.qzone.qq.com/cgi-bin/cgi_farm_ini_run?v=68">http://farm.qzone.qq.com/cgi-bin/cgi_farm_ini_run?v=68</a></p><p>(2) 早期版本中使用过的，在文件名后加上一个版本（v）变量值，文件名.类型 + ?v= 版本号，比如：Seeds.swf?v=5</p><p>&lt;material url=&quot;<a href="http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds.swf?v=5">http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds.swf?v=5</a>&quot; statusText=&quot;加载作物素材（第一部分）...&quot; size=&quot;121403&quot; /&gt;<br />&lt;material url=&quot;<a href="http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds_2.swf?v=4">http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds_2.swf?v=4</a>&quot; statusText=&quot;加载作物素材（第二部分）...&quot; size=&quot;104972&quot; /&gt;<br />&lt;material url=&quot;<a href="http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds_3_v_9.swf?v=1">http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds_3_v_9.swf?v=1</a>&quot; statusText=&quot;加载作物素材（第三部分）...&quot; size=&quot;15506&quot; /&gt;<br />&lt;material url=&quot;<a href="http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds_4_v_1.swf?v=1">http://appimg1.qq.com/happyfarm/module/ui/crops/Seeds_4_v_1.swf?v=1</a>&quot; statusText=&quot;加载作物素材（红土地部分）...&quot; size=&quot;35506&quot; /&gt;<br />&lt;material url=&quot;<a href="http://appimg1.qq.com/happyfarm/module/ui/crops/Flowers.swf?v=4">http://appimg1.qq.com/happyfarm/module/ui/crops/Flowers.swf?v=4</a>&quot; statusText=&quot;加载花卉素材...&quot; size=&quot;49838&quot; /&gt;</p><p>除上面的方式外，如果还有一种最简单的方式。<br />(3) 就是直接更改文件夹的名称，通常在多数素材同时更新时使用，例如：sourceV100722</p><p>(4) 我个人也使用了一种自己的强制更新方式，和QQ农场中的第二种方式类似，分享给读者参考和交流：</p><p>首先loading.swf，如果需要强制更新，我会这样命名:loading.swf?v10.07.22，也就是加上当天具体时间,大部分情况下loading.swf会较少更新版本。</p><p>接着就是具体模块，根据需要，可划分为多组，比如下面我划分成两组，分别是公共(public)模块和皮肤(skin)文件,此外skin部分还可被放在用于控制多种语言版本的文件夹下。<br />我们可以在loading.as中动态添加，根据节点数量动态分配，比如：for each (var item1:XML in publicLists)&nbsp; for each (var item2:XML in moduleLists)</p><p>这个XML是每次都要重新加载，最早加载这个XML时要加上一个随机数，比如:&quot;firstRun.xml?v=100720&quot; + Math.random() 。<br />最早的loading队列加载时，需要先加载这个XML，然后再分配加载XML中取中的元素项。</p><p>&lt;moduleList&gt;&lt;!-- 模块列表 1.0 --&gt;<br />&nbsp;<br />&nbsp;&lt;public&gt;<br />&nbsp;&nbsp;&lt;main url=&quot;main.swf?v=10.07.22&quot; title=&quot;main&quot; /&gt;<br />&nbsp;&nbsp;&lt;bottom url=&quot;bottom.swf?v=10.07.22&quot; title=&quot;bottom&quot; /&gt;<br />&nbsp;&nbsp;&lt;publicUI url=&quot;source/public/skin/publicUI.swf?v=10.07.22&quot; title=&quot;publicUI&quot; /&gt;<br />&nbsp;&nbsp;&lt;publicUI url=&quot;source/public/skin/sounds.swf?v=10.07.22&quot; title=&quot;sounds&quot; /&gt;<br />&nbsp;&lt;/public&gt;<br />&nbsp;<br />&nbsp;&lt;skin&gt;<br />&nbsp;&nbsp;&lt;material url=&quot;/skin/indexUI.swf?v=10.07.22&quot; title=&quot;indexUI&quot; /&gt;<br />&nbsp;&nbsp;&lt;material url=&quot;/skin/alertUI.swf?v=10.07.22&quot; title=&quot;alertUI&quot; /&gt;<br />&nbsp;&lt;/skin&gt;<br />&lt;/moduleList&gt;<br />&nbsp;</p>]]></description><category>AS3</category><comments>http://www.shch8.com/blog/post/80.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=80</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=80&amp;key=1702f36e</trackback:ping></item><item><title>HTML5与Flash之争</title><author>wzh3847@sina.com (望月狼)</author><link>http://www.shch8.com/blog/post/79.html</link><pubDate>Thu, 22 Jul 2010 10:28:25 +0800</pubDate><guid>http://www.shch8.com/blog/post/79.html</guid><description><![CDATA[<div><span>Flash是否会被HTML5取代，相信这是所有Flasher都关心的问题，我个人对这事有三点理解：</span></div><div>1．<span>Html5距离我们还很远</span></div><div>看看我们国内，有<span>65%的网民在用IE浏览器，大约26%的用户在用具有8年历史的IE6，如果不使用插件，连最新版本的IE8都不支持任何HTML5功能。而FlashPlayer的安装率已经高达93%，这是player跨平台浏览器插件的优势。</span></div><div>2．<span>Flash多领域的扩张</span></div><div>虽然<span>Html5还很远，但Flash四面楚歌的局面还是不容忽视，如果有一天Flash基于IE应用领域萎缩了，怎么办？我想，Flash现在的应用早就不限于IE之中，已进军于各行各业了，其中，势头最大的是AIR桌面程序。</span></div><div>3．<span>Flash一直在进化</span></div><div>Flash的新陈代谢从来就没停过，任何一个新事物都有一个成长过程，<span>Flash历经了14年的发展才得已丰富，至于争论不休的性能问题，从新版本的IDE中可以看到已经进步了很多。</span></div><p>&nbsp;</p>]]></description><category>思想</category><comments>http://www.shch8.com/blog/post/79.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=79</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=79&amp;key=a3a3f12a</trackback:ping></item><item><title>文本高亮类</title><author>lbynet@homail.com (lby)</author><link>http://www.shch8.com/blog/post/78.html</link><pubDate>Fri, 25 Jun 2010 13:34:13 +0800</pubDate><guid>http://www.shch8.com/blog/post/78.html</guid><description><![CDATA[<p>As3 textHighlighter高亮显示文本</p><p>效果如下：</p><p><embed height="138" width="498" src="http://blog.formatlos.de/wp-content/uploads/2009/06/texthighlighterexample.swf" type="application/x-shockwave-flash" play="true" loop="true" menu="true"></embed></p><p>实例代码：</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span class="keyword">var</span><span>&nbsp;highlight&nbsp;:&nbsp;</span><span class="keyword">Sprite</span><span>&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;</span><span class="keyword">Sprite</span><span>(); &nbsp;&nbsp;</span></span></li>    <li><span>addChild(highlight); &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="comment">//&nbsp;create&nbsp;textfield </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span class="keyword">var</span><span>&nbsp;textField&nbsp;:&nbsp;TextField&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;TextField(); &nbsp;&nbsp;</span></li>    <li><span>addChild(textField); &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="comment">//&nbsp;apply&nbsp;text&nbsp;style&nbsp;and&nbsp;add&nbsp;text </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>... &nbsp;&nbsp;</span></li>    <li><span>&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span class="comment">//&nbsp;highlight&nbsp;style </span><span>&nbsp;&nbsp;</span></li>    <li><span class="keyword">var</span><span>&nbsp;style&nbsp;:&nbsp;IHighlightStyle&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;SimpleHighlightStyle(</span><span class="number">0x00ff00</span><span>,&nbsp;</span><span class="number">0.5</span><span>); &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp; &nbsp;&nbsp;</span></li>    <li><span class="comment">//&nbsp;highlighter </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span class="keyword">var</span><span>&nbsp;textHighlighter&nbsp;:&nbsp;TextHighlighter&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;TextHighlighter(textField,&nbsp;highlight,&nbsp;style); &nbsp;&nbsp;</span></li>    <li><span>textHighlighter.highlight(/far/gi); &nbsp;&nbsp;</span></li>    <li class="alt"><span>textHighlighter.highlight(</span><span class="string">&quot;Duden&quot;</span><span>,&nbsp;</span><span class="keyword">false</span><span>);&nbsp;&nbsp;</span></li></ol></div><p>下载实例</p><p><strong>version 0.1<br /></strong><a href="http://blog.formatlos.de/wp-content/uploads/2009/06/texthighlighter_01.zip">TextHighlighter_01.zip</a></p><p>&nbsp;</p>]]></description><category>AS3</category><comments>http://www.shch8.com/blog/post/78.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=78</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=78&amp;key=019e7170</trackback:ping></item><item><title>方块塔防</title><author>lbynet@homail.com (lby)</author><link>http://www.shch8.com/blog/post/77.html</link><pubDate>Tue, 22 Jun 2010 13:58:41 +0800</pubDate><guid>http://www.shch8.com/blog/post/77.html</guid><description><![CDATA[<p><strong>Blob Tower Defence<br /></strong>另类的塔防游戏，一般的塔防游戏都是俯视视角。而它是水平视角，蛮有趣的。</p><p>阻止敌人的方块(有四种)可以垒起来，敌人是滚动的圆形。点击方块，然后放到灰色方块里。别惯性思维地以为是拖动它们。。<br />四种箱子对应四种炮塔：一般，快射，减速，群攻。 <br />&nbsp;</p><p>玩法与提示：鼠标操作，单击选择上面的炮塔类型，会显示可以放置的位置，當然是从下到上而放了。&nbsp;點放置好的箱子，你选择它后右边面板中会显示出，它的一些信息，升級(Upgrade)选项。&nbsp;点Start&nbsp;开始防守。</p><p><embed width="550" menu="true" loop="true" play="true" type="application/x-shockwave-flash" src="http://i129.photobucket.com/albums/p240/roveme/swf/blob-tower-defence.swf" height="420"></embed></p><p><a href="http://www.ifgdb.com/play/blob-tower-defence/" rel="external nofollow"><font color="#105cb6">link</font></a></p><p>&nbsp;</p>]]></description><category>Games</category><comments>http://www.shch8.com/blog/post/77.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=77</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=77&amp;key=3c726e51</trackback:ping></item><item><title>关于“数据分页”</title><author>lbynet@homail.com (lby)</author><link>http://www.shch8.com/blog/post/76.html</link><pubDate>Tue, 22 Jun 2010 11:24:01 +0800</pubDate><guid>http://www.shch8.com/blog/post/76.html</guid><description><![CDATA[<p>分页是游戏和应用程序开发中经常需要用到的一个程序，<br />在游戏开发中我用得最多的算是数组(ArrayPages)分页和哈希表(HashMapPages)分页。<br />比如《抢车位》游戏中的&ldquo;场景店&rdquo;模块、《QQ农场》中的好友列表、常见新闻列表分页等等。</p><p>下面我提供之前写的ArrayPages.as ,哈希表的分页就类似。</p><div class="codeText"><div class="codeHead">AS3代码</div><ol class="dp-j">    <li class="alt"><span><span class="keyword">package</span><span>&nbsp;com.lbynet.util&nbsp; &nbsp;&nbsp;</span></span></li>    <li><span>{ &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</li>    <li class="alt"><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;... </span>&nbsp;</span></li>    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@author&nbsp;lbynet&nbsp;(Tools&nbsp;-&gt;&nbsp;数组数据分页...) </span>&nbsp;</span></li>    <li class="alt"><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@version&nbsp;0.2 </span>&nbsp;</span></li>    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@copy&nbsp;shch8.com&nbsp;All&nbsp;Rights&nbsp;Reserved&nbsp;At&nbsp;2008 </span>&nbsp;</span></li>    <li class="alt"><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;ArrayPages&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">private</span><span>&nbsp;</span><span class="keyword">var</span><span>&nbsp;data_array:</span><span class="keyword">Array</span><span>;&nbsp;</span><span class="comment">//&nbsp;存储所有数据 </span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">private</span><span>&nbsp;</span><span class="keyword">var</span><span>&nbsp;pageRecord:</span><span class="keyword">int</span><span>;</span><span class="comment">//&nbsp;每页的数据个数 </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">private</span><span>&nbsp;</span><span class="keyword">var</span><span>&nbsp;arrayLength:</span><span class="keyword">int</span><span>;</span><span class="comment">//&nbsp;总个数 </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">var</span><span>&nbsp;totalPages:</span><span class="keyword">int</span><span>;&nbsp;</span><span class="comment">//&nbsp;总页数 </span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">function</span><span>&nbsp;ArrayPages(_data:</span><span class="keyword">Array</span><span>,&nbsp;_pagerecord:</span><span class="keyword">int</span><span>&nbsp;=&nbsp;</span><span class="number">4</span><span>)&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(_data&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>) &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">this</span><span>.data_array&nbsp;=&nbsp;_data; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">this</span><span>.pageRecord&nbsp;=&nbsp;_pagerecord; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">this</span><span>.arrayLength&nbsp;=&nbsp;</span><span class="keyword">this</span><span>.data_array.length; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">this</span><span>.totalPages&nbsp;=&nbsp;</span><span class="keyword">this</span><span>.arrayLength&nbsp;/&nbsp;</span><span class="keyword">this</span><span>.pageRecord; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(</span><span class="keyword">this</span><span>.arrayLength&nbsp;%&nbsp;</span><span class="keyword">this</span><span>.pageRecord&nbsp;&gt;&nbsp;</span><span class="number">0</span><span>) &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">this</span><span>.totalPages&nbsp;+=&nbsp;</span><span class="number">1</span><span>; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//trace(this.data_array); </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//trace(this.pageRecord); </span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//trace(this.arrayLength); </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//trace(this.totalPages); </span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/*&nbsp;取出某一页的数据&nbsp;(1-totalPages)&nbsp;*/</span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">function</span><span>&nbsp;getPageData(curpage:</span><span class="keyword">uint</span><span>):</span><span class="keyword">Array</span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(curpage&nbsp;&lt;=&nbsp;</span><span class="number">0</span><span>||curpage&nbsp;&gt;&nbsp;</span><span class="keyword">this</span><span>.totalPages) &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">throw</span><span>&nbsp;</span><span class="keyword">new</span><span>&nbsp;</span><span class="keyword">Error</span><span>(</span><span class="string">'页数必需在&nbsp;1&nbsp;-&nbsp;'</span><span>&nbsp;+&nbsp;</span><span class="keyword">this</span><span>.totalPages&nbsp;+&nbsp;</span><span class="string">'&nbsp;页&nbsp;以内'</span><span>); &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">var</span><span>&nbsp;_startIndex:</span><span class="keyword">int</span><span>;</span><span class="comment">//&nbsp;某页的第一条数据 </span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(curpage&nbsp;==&nbsp;</span><span class="number">1</span><span>) &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_startIndex&nbsp;=&nbsp;</span><span class="number">0</span><span>; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">else</span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_startIndex&nbsp;=&nbsp;(curpage&nbsp;-&nbsp;</span><span class="number">1</span><span>)&nbsp;*&nbsp;pageRecord; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">var</span><span>&nbsp;_endIndex:</span><span class="keyword">int</span><span>&nbsp;=&nbsp;_startIndex&nbsp;+&nbsp;pageRecord;&nbsp;</span><span class="comment">//&nbsp;某页的最后一条数据 </span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(curpage&nbsp;&gt;=&nbsp;</span><span class="keyword">this</span><span>.totalPages&nbsp;&amp;&amp;&nbsp;_endIndex&nbsp;!=&nbsp;</span><span class="keyword">this</span><span>.arrayLength)</span><span class="comment">//&nbsp;(_endIndex&nbsp;!=&nbsp;this.arrayLength)&nbsp;&nbsp;===&nbsp;(this.arrayLength&nbsp;%&nbsp;this.pageRecord&nbsp;==&nbsp;0) </span><span>&nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_endIndex&nbsp;=&nbsp;_startIndex&nbsp;+&nbsp;</span><span class="keyword">this</span><span>.arrayLength&nbsp;%&nbsp;</span><span class="keyword">this</span><span>.pageRecord; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//trace('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;',&nbsp;_startIndex,&nbsp;_endIndex); </span><span>&nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;data_array.slice(_startIndex,&nbsp;_endIndex); &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>    <li><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>    <li class="alt"><span>}&nbsp;&nbsp;</span></li></ol></div><p>&nbsp;</p>]]></description><category>AS3</category><comments>http://www.shch8.com/blog/post/76.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=76</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=76&amp;key=6c9782dc</trackback:ping></item><item><title>获取PNG不透明区域( 动作应用 )</title><author>lbynet@homail.com (lby)</author><link>http://www.shch8.com/blog/post/74.html</link><pubDate>Fri, 28 May 2010 16:21:52 +0800</pubDate><guid>http://www.shch8.com/blog/post/74.html</guid><description><![CDATA[<p>&nbsp;</p><p><img style="width: 537px; height: 49px" title="" alt="" onload="ResizeImage(this,520)" src="http://www.shch8.com/blog/upload/man.png" /></p><p>&nbsp;下面的展示的 hero 动作动画，鼠标经过时，hero会显示红色的描边效果。</p><p><object style="width: 237px; height: 164px" width="237" height="164" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"><param value="http://www.shch8.com/blog/upload/gameControl02.swf" name="movie" /><param value="high" name="quality" /><param value="True" name="play" /></object></p><p>&nbsp;如何把一张PNG图片切割成多张，进行图片数据存储，再一一取出，用一个Timer将它们串起来，不停切换形成动画效果。</p><p>可参考下面资料：</p><p><a href="http://www.shch8.com/blog/post/17.html">http://www.shch8.com/blog/post/17.html</a></p><p><a href="http://www.klstudio.com/post/119.html">http://www.klstudio.com/post/119.html</a>&nbsp;( 单个图片进行角色动作化处理 )</p><p>&nbsp;</p>]]></description><category>AS3</category><comments>http://www.shch8.com/blog/post/74.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=74</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=74&amp;key=a138648b</trackback:ping></item><item><title>奇妙的反射镜</title><author>lbynet@homail.com (lby)</author><link>http://www.shch8.com/blog/post/73.html</link><pubDate>Fri, 21 May 2010 23:04:48 +0800</pubDate><guid>http://www.shch8.com/blog/post/73.html</guid><description><![CDATA[<p>这枚经典的反射镜小游戏，难度越来越大,考验你的智力！<br />#鼠标左键控制，拖动反光镜，按照游戏中要求做即可，很有意思滴过关益智游戏。<br /><embed width="640" height="480" play="true" loop="true" menu="true" type="application/x-shockwave-flash" src="http://www.shch8.com/blog/upload/chromatron.swf"></embed><br />&nbsp;</p><p><br />还没玩过瘾就请直接玩下面关卡：</p><p><embed width="640" height="480" play="true" loop="true" menu="true" type="application/x-shockwave-flash" src="http://www.shch8.com/blog/upload/chromatron2.swf"></embed><br /><br />以上是该系列的第1-50关</p>]]></description><category>Games</category><comments>http://www.shch8.com/blog/post/73.html#comment</comments><wfw:comment>http://www.shch8.com/blog/</wfw:comment><wfw:commentRss>http://www.shch8.com/blog/feed.asp?cmt=73</wfw:commentRss><trackback:ping>http://www.shch8.com/blog/cmd.asp?act=tb&amp;id=73&amp;key=f0e499ef</trackback:ping></item></channel></rss>

