<?xml version="1.0" encoding="UTF-8"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="zh-TW">
<title>O3noBLOG</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/" />
<modified>2008-10-12T13:42:52Z</modified>
<tagline></tagline>
<id>tag:blog.othree.net,2008://1</id>
<generator url="http://www.movabletype.org/" version="4.21-en">Movable Type</generator>
<copyright>Copyright (c) 2008, othree</copyright>

<entry>
<title>JavaScript 優良部分</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/10/12/javascript-the-good-parts/" />
<modified>2008-10-12T13:42:52Z</modified>
<issued>2008-10-12T04:12:27Z</issued>
<id>tag:blog.othree.net,2008://1.545</id>
<created>2008-10-12T04:12:27Z</created>
<summary type="text/plain"> 本書評由othree評論於2008/08/15，評分為5分（滿分5分），採創用 CC 姓名標示-相同方式分享 授權條款釋出。 JavaScript 優良部分（JavaScript: The Good Parts）在英文版出版消息出來時我就很有興趣了，本來也預訂要購買了，沒想到中文版很快就出了，當然是二話不說就買下來了，畢竟不管英文閱讀能力如何，我看中文吸收還是比較快，書到手時首先被他的厚度嚇了一跳，全書才160多頁，定價420，不過內容實在是很不錯，我是覺得收穫/頁數比Pro JavaScript Techniques還要高。 書中主要是分成分成語法、物件、函式、繼承、陣列和正規表示式（Regular Expression）幾個部分來介紹JavaScript的優良部分，除了語法部分外，每章都講到不少慣例的寫法，許也可以稱為設計模式，像是var that = this;這個作法，我以前比較有印象是看過var self = this;，我自己則沒有特別用哪個變數名稱，不過看到這段之後去google了一下，用that的其實比較多。書中比較難的大概還是函式和繼承這部份吧，以繼承來說，JavaScript其實在設計上並沒有真的講到繼承（inherit）的，資料封包也是，不過都有其他方法可以做到這些事情，書中提到的繼承方法大概有三四種，其特性都有介紹。至於函式的部份我還有一些還沒花腦袋去把code看懂，不過就已經理解或是用過的方法而言，這章節介紹的東西都很有用，寫小script可能用不到，不過需要複雜一點的演算法的時候，相信裡面的東西就會很有幫助了。 除了優良部分外，還有一篇附錄是講JavaScript不良的部份，像是每本書都會提到的 == 的怪異行為，一些可能會造成錯誤解讀的用法等等，除了這些優良部分和不良部份的介紹外，其實書中在各個章節，都若有若無的在強調寫code要保持良好的程式碼風格，到第九章還特別把這件事提除來強調，即使到附錄的不良的部份也還事宜在提到這些事情，這部份的內容其實我覺得是蠻意外的收穫，因為這些慣例的寫法通常不屬於規格的一部分，如果沒人整理出來要靠自己學習事很花時間的，為此接下來也還要買Pro JavaScript Design Patterns，希望也會是一本好書。 JavaScript 優良部分整體而言內容紮實，長度短了點，雖然部分內容有些複雜，不過就如序文所說，這本書我也推薦給剛開始接觸JavaScript的人，畢竟，不該碰的東西，該養成的習慣都是早點知道比較好啊。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>books</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<div class="hreview" id="hreview-JavaScript-The-Good-Parts">
  <p class="item">
    <a class="fn url" href="http://www.oreilly.com.tw/product2_web.php?id=a238" title="JavaScript 優良部分"><img src="http://blog.othree.net/log/2008/10/12/javascript-the-good-parts/js-good-parts.gif" title="JavaScript 優良部分" alt="JavaScript 優良部分" width="170" height="211" /></a>
  </p>
  <p class="entry-info">
  本書評由<span class="reviewer vcard"><span class="fn nickname">othree</span></span>評論於<abbr class="dtreviewed" title="20080815">2008/08/15</abbr>，評分為<abbr title="5" class="rating">5分（滿分5分）</abbr>，採<a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/tw/deed.zh_TW">創用 CC 姓名標示-相同方式分享 授權條款</a>釋出。
  </p>
  <div class="description">
    <p>JavaScript 優良部分（<a href="http://oreilly.com/catalog/9780596517748/">JavaScript: The Good Parts</a>）在英文版出版消息出來時我就很有興趣了，本來也預訂要購買了，沒想到中文版很快就出了，當然是二話不說就買下來了，畢竟不管英文閱讀能力如何，我看中文吸收還是比較快，書到手時首先被他的厚度嚇了一跳，全書才160多頁，定價420，不過內容實在是很不錯，我是覺得收穫/頁數比<a href="http://blog.othree.net/log/2008/02/21/pro-javascript-techniques/">Pro JavaScript Techniques</a>還要高。</p>
    <p>書中主要是分成分成語法、物件、函式、繼承、陣列和正規表示式（Regular Expression）幾個部分來介紹JavaScript的優良部分，除了語法部分外，每章都講到不少慣例的寫法，許也可以稱為設計模式，像是<code>var that = this;</code>這個作法，我以前比較有印象是看過<code>var self = this;</code>，我自己則沒有特別用哪個變數名稱，不過看到這段之後去google了一下，用<strong>that</strong>的其實比較多。書中比較難的大概還是函式和繼承這部份吧，以繼承來說，JavaScript其實在設計上並沒有真的講到繼承（inherit）的，資料封包也是，不過都有其他方法可以做到這些事情，書中提到的繼承方法大概有三四種，其特性都有介紹。至於函式的部份我還有一些還沒花腦袋去把code看懂，不過就已經理解或是用過的方法而言，這章節介紹的東西都很有用，寫<a href="http://blog.othree.net/log/2008/09/20/konami-command/">小script</a>可能用不到，不過需要複雜一點的演算法的時候，相信裡面的東西就會很有幫助了。</p>
    <p>除了優良部分外，還有一篇附錄是講JavaScript不良的部份，像是每本書都會提到的 == 的怪異行為，一些可能會造成錯誤解讀的用法等等，除了這些優良部分和不良部份的介紹外，其實書中在各個章節，都若有若無的在強調寫code要保持良好的程式碼風格，到第九章還特別把這件事提除來強調，即使到附錄的不良的部份也還事宜在提到這些事情，這部份的內容其實我覺得是蠻意外的收穫，因為這些慣例的寫法通常不屬於規格的一部分，如果沒人整理出來要靠自己學習事很花時間的，為此接下來也還要買<a href="http://www.apress.com/book/view/9781590599082">Pro JavaScript Design Patterns</a>，希望也會是一本好書。</p>
    <p>JavaScript 優良部分整體而言內容紮實，長度短了點，雖然部分內容有些複雜，不過就如序文所說，這本書我也推薦給剛開始接觸JavaScript的人，畢竟，不該碰的東西，該養成的習慣都是早點知道比較好啊。</p>
  </div>
</div>]]>

</content>
</entry>

<entry>
<title>My Day, Yesterday</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/10/12/my-day-yesterday/" />
<modified>2008-10-12T04:04:58Z</modified>
<issued>2008-10-12T04:03:04Z</issued>
<id>tag:blog.othree.net,2008://1.544</id>
<created>2008-10-12T04:03:04Z</created>
<summary type="text/plain">Flickr Blog上看到的。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>diary</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p><a href="http://blog.flickr.net/zh/2008/10/12/%E6%8A%8A%E4%B8%80%E5%A4%A9%E6%BF%83%E7%B8%AE%E6%88%9090%E7%A7%92/">Flickr Blog</a>上看到的。</p>

<p><object type="application/x-shockwave-flash" width="400" height="225" data="http://www.flickr.com/apps/video/stewart.swf?v=60247" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"> <param name="flashvars" value="intl_lang=zh-hk&amp;photo_secret=de8b738edd&amp;photo_id=2927448272"></param> <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=60247"></param> <param name="bgcolor" value="#000000"></param> <param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=60247" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=zh-hk&amp;photo_secret=de8b738edd&amp;photo_id=2927448272" height="225" width="400"></embed></object></p>]]>

</content>
</entry>

<entry>
<title>逆勢操作的Rockman 9</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/10/11/rockman-9/" />
<modified>2008-10-12T03:59:48Z</modified>
<issued>2008-10-11T13:36:43Z</issued>
<id>tag:blog.othree.net,2008://1.543</id>
<created>2008-10-11T13:36:43Z</created>
<summary type="text/plain">在次世代主機的戰爭之中，任天堂跳脫了以往追求主機性能、畫面、聲光效果的競賽，把新主機的重心轉往遊戲的本質，推出了Wii，結果主機大賣，公司股價即使在現在這波全球性的經濟危機之下還能逆勢上漲。最近有一款遊戲則做出更讓人驚訝的策略，雖然還不知道其收益會是如何，不過各種消息讓我覺得還是很值得介紹這款遊戲，這款遊戲就是洛克人九。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>acg</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>在次世代主機的戰爭之中，任天堂跳脫了以往追求主機性能、畫面、聲光效果的競賽，把新主機的重心轉往遊戲的本質，推出了Wii，結果主機大賣，公司股價即使在現在這波全球性的經濟危機之下還能逆勢上漲。最近有一款遊戲則做出更讓人驚訝的策略，雖然還不知道其收益會是如何，不過各種消息讓我覺得還是很值得介紹這款遊戲，這款遊戲就是<a href="http://www.capcom.co.jp/rockman/9">洛克人九</a>。</p>

<p><img src="http://blog.othree.net/log/2008/10/11/rockman-9/rockman-logo.jpg" alt="" /></p>]]>
<![CDATA[<p>洛克人（Rockman）是1987年在任天堂紅白機上推出的橫向捲軸動作遊戲，本傳系列之前最後一款是1996年在上PS推出的八代，除了本傳系列外，還有推出各種衍生系列，沒記錯的話，洛克人系列是史上系列作最多的遊戲，其中也不乏3D的版本，2008年推出的洛克人九卻決定以8bit（紅白機等級）的技術來製作，洛克人的一堆動作也都拿掉了，只剩跳和射擊，不能跑不能滑不能蹲，關卡難度也回到以前會讓人想摔手把的程度，幾乎一切都返樸歸真，對於老玩家來說實在是非常的懷念而且也非常期待，結果首週也達到不錯的銷量（數字我忘了，也沒有後續的情報）。</p>

<p>而這幾天在日本舉辦的東京電玩展上更是有了<a href="http://www.4gamer.net/games/072/G007292/20081010071/">驚人的發表</a>，CAPCOM官方要免費提供洛克人九的素材給人二次創作，而且發表當天就可以在<a href="http://www.niconicommons.jp/">ニコニ・コモンズ（niconi commons）</a>上抓到了，標籤都設為<a href="http://www.niconicommons.jp/tag/%E3%80%90%E3%83%AD%E3%83%83%E3%82%AF%E3%83%9E%E3%83%B3%E5%85%AC%E5%BC%8F%E3%80%91">【ロックマン公式】</a>，除了遊戲中的人物各種動作圖形、高解析度宣傳圖之外，還有關卡背景音樂等，這應該是日本遊戲史上第一次吧，之前雖然也有些作品的官方網站會提供些素材，不過素材品質和使用範圍的授權和洛克人九這次的程度相比之下根本都是雜魚而已，目前這些素材都是不限範圍的非商業使用，和創用CC不同，他有自己的授權條款，如果有興趣使用的人可能需要自己去看一下。</p>

<p>這次會有8bit洛克人九和官方的素材公開，和ニコニコ上的二次創作關係很大，像是打不倒的空氣人和億千萬等等的洛克人二次創作，都在ACG社群內造成很大的迴響，歌曲不知不覺中也成為家諭戶曉的名曲，我個人是認為因為這些二次創作的關係，稲船敬二才會決定迴歸傳統還只用到8bit的等級，甚至是開放使用這些素材，如果這次的洛克人九能夠產生一個正循環，開放素材讓更多的二次創作產生，而這些二次創作所產生的效應也能對CAPCOM產生益處，不論是經濟收益還是知名度，或許都會吸引其他作品和公司也開放素材的使用，要是真的產生這樣的趨勢的話，在日本長年以來都位於灰色地帶的同仁市場會有個嶄新的局面也說不定。</p>]]>
</content>
</entry>

<entry>
<title>YUI Compressor</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/10/11/yuicompressor/" />
<modified>2008-10-11T17:12:58Z</modified>
<issued>2008-10-11T12:45:47Z</issued>
<id>tag:blog.othree.net,2008://1.542</id>
<created>2008-10-11T12:45:47Z</created>
<summary type="text/plain">這東西好像很久以前有看過一次，那時不知道為什麼沒深入接觸（或許是看到java就逃跑了），期間還有試過perl的javascript compressor，不過用起來都不是很方便，直到前陣子看到DK示範了一下才又提起興趣，可惜我的blog剛搬離研究室的電腦，而且linux上也不像FreeBSD上有port好的，所以就變成需要在windows下使用，用命令列操控是還算方便，不過因為是包成jar檔，檔名又蠻長的，打命令的時候還蠻辛苦的，所以就寫了個batch檔案來處理： SET PP=D:\tools\yuicompressor\ java -jar %PP%yuicompressor.jar --charset utf-8 %1 %2 %3 %4 %5 %6 %7 %8 %9 確定檔案路徑和基本的選項之後，把這個batch檔丟到path下的目錄，以後就可以用這個指令來壓縮js和css檔了，不過在我自己的電腦上還有遇到別的問題，就是.bat檔不會真的執行，不知道做了什麼事才變成這樣，總之又去找了bat2exec把bat檔轉成com檔，不過這個小程式出處不明，希望沒有什麼木馬在裡面@@。 事後感想是windows的命令列能不能好用一點啊Q_Q。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>script</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p><a href="http://developer.yahoo.com/yui/compressor/">這東西</a>好像很久以前有看過一次，那時不知道為什麼沒深入接觸（或許是看到java就逃跑了），期間還有試過<a href="http://dean.edwards.name/packer/">perl的javascript compressor</a>，不過用起來都不是很方便，直到前陣子看到<a href="http://blog.gslin.org/archives/2008/09/22/1705/">DK示範了一下</a>才又提起興趣，可惜我的blog剛搬離研究室的電腦，而且linux上也不像FreeBSD上有port好的，所以就變成需要在windows下使用，用命令列操控是還算方便，不過因為是包成jar檔，檔名又蠻長的，打命令的時候還蠻辛苦的，所以就寫了個batch檔案來處理：</p>



<pre><code>SET PP=D:\tools\yuicompressor\
java -jar %PP%yuicompressor.jar --charset utf-8 %1 %2 %3 %4 %5 %6 %7 %8 %9</code></pre>



<p>確定檔案路徑和基本的選項之後，把這個batch檔丟到path下的目錄，以後就可以用這個指令來壓縮js和css檔了，不過在我自己的電腦上還有遇到別的問題，就是.bat檔不會真的執行，不知道做了什麼事才變成這樣，總之又去找了<a href="http://www.programmersheaven.com/download/14524/download.aspx">bat2exec</a>把bat檔轉成com檔，不過這個小程式出處不明，希望沒有什麼木馬在裡面@@。</p>

<p>事後感想是windows的命令列能不能好用一點啊Q_Q。</p>]]>

</content>
</entry>

<entry>
<title>超展開檢視</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/29/super-expand/" />
<modified>2008-09-29T08:52:26Z</modified>
<issued>2008-09-29T08:47:08Z</issued>
<id>tag:blog.othree.net,2008://1.541</id>
<created>2008-09-29T08:47:08Z</created>
<summary type="text/plain"> 我一定是コードギアス的劇情討論看太多才會看錯成這樣 囧 。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>diary</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p><img src="http://blog.othree.net/log/2008/09/29/super-expand/expand.png" alt="Google Reader的展開檢視我看成超展開檢視" height="44" width="153" /></p>

<p>我一定是<a href="http://www.geass.jp/">コードギアス</a>的劇情討論看太多才會看錯成這樣 囧 。</p>]]>

</content>
</entry>

<entry>
<title>JavaScript Closure</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/27/javascript-closure-issue/" />
<modified>2008-09-26T19:27:17Z</modified>
<issued>2008-09-26T18:21:41Z</issued>
<id>tag:blog.othree.net,2008://1.540</id>
<created>2008-09-26T18:21:41Z</created>
<summary type="text/plain"><![CDATA[這篇想寫很久了，test case的檔案也寫好超過一個月了，這次用了3(?)個case來說明，以下每個test-case都有三個h2標籤，然後透過getElementsByTagName來取得這三個h2，接著用for迴圈來對每個h2加上click事件，click後會alert i的值出來，i是for迴圈的索引值。首先來看一下第一個case的script： var subHeads = document.getElementsByTagName('h2'); for (var i=0; i&lt;subHeads.length; i++) { subHeads[i].onclick = function () { alert(i); }; } 這個case中，使用非常直觀的想法，不過他的結果是每個h2 click下去都會alert "3"出來，實際上每個click都是執行一個function，這個function會執行alert function，並且送 i 這個變數作為輸入值，不過實際上使用者click動作發生時，迴圈已經跑過一遍，而且 i 的值已經變成3了，所以你不管click哪一個h2，實際上都是做 alert(3) 這個動作。...]]></summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>script</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>這篇想寫很久了，test case的檔案也寫好超過一個月了，這次用了3(?)個case來說明，以下每個test-case都有三個h2標籤，然後透過getElementsByTagName來取得這三個h2，接著用for迴圈來對每個h2加上click事件，click後會alert i的值出來，i是for迴圈的索引值。首先來看一下<a href="http://othree.net/projects/test-case/closure/test1.html">第一個case</a>的script：</p>



<pre><code>var subHeads = document.getElementsByTagName('h2');
for (var i=0; i&lt;subHeads.length; i++) {
    subHeads[i].onclick = function () {
        alert(i);
    };
}</code></pre>



<p>這個case中，使用非常直觀的想法，不過他的結果是每個h2 click下去都會alert "3"出來，實際上每個click都是執行一個function，這個function會執行alert function，並且送 <strong>i</strong> 這個變數作為輸入值，不過實際上使用者click動作發生時，迴圈已經跑過一遍，而且 i 的值已經變成3了，所以你不管click哪一個h2，實際上都是做 alert(3) 這個動作。</p>]]>
<![CDATA[<p>要解決這個問題，有兩個方法可以處理，第一個是利用function來做closure把變數的scope獨立出來，另一個方法是用eval來做function，首先來看<a href="http://othree.net/projects/test-case/closure/test2.html">第一個作法</a>：</p>



<pre><code>var subHeads = document.getElementsByTagName('h2');
for (var i=0; i&lt;subHeads.length; i++) {
    (function () {
        var ii = i;
        subHeads[i].onclick = function () {
            alert(ii);
        };
    })();
}</code></pre>



<p>這個方法是用匿名function把 <strong>ii</strong> 這個變數的scope獨立起來，而 ii 的值就是在這個匿名function執行時 i 的值，這樣每個click function裡面的 ii 就都各自獨立，不會互相影響到。再來看<a href="http://othree.net/projects/test-case/closure/test3.html">第二個作法</a>：</p>



<pre><code>var subHeads = document.getElementsByTagName('h2');
for (var i=0; i&lt;subHeads.length; i++) {
    eval(&quot;subHeads[i].onclick = function () {&quot; +
         &quot;    alert(&quot;+i+&quot;);&quot; +
         &quot;};&quot;);
}</code></pre>



<p>可以看到整個event function的指派都是用eval來達成的，比較特別的是要用 <strong>i</strong> 時，我是跳脫字串，直接用 i變數 的值，這個作法其實是讓每個click function的內容都不太一樣（alert的輸入值不同）。而除了這兩個方法之外，我還蠻喜歡把屬性加到DOM的elementNode上的，所以來看看<a href="http://othree.net/projects/test-case/closure/test4.html">我習慣的作法</a>：</p>



<pre><code>var subHeads = document.getElementsByTagName('h2');
for (var i=0; i&lt;subHeads.length; i++) {
    subHeads[i].attr_i = i;
    subHeads[i].onclick = function () {
        alert(this.attr_i);
    };
}</code></pre>



<p>在這個範例理，我先在 h2 node 下面加上 attr_i 這個屬性，值就是 i 當時的值，而click function內就是送 attr_i 給alert function，這樣結果也可以如我們所預期。不過如果是用jQuery的話就要注意了，來看看最後這個<a href="http://jquery.com/">jQuery</a>的<a href="http://othree.net/projects/test-case/closure/test5.html">例子</a>：</p>



<pre><code>var subHeads = $('h2');
for (var i=0; i&lt;subHeads.length; i++) {
    subHeads.eq(i).attr_i = i;
    subHeads.eq(i).click(function () {
        alert($(this).attr_i);
    });
}</code></pre>



<p>因為jQuery沒有cache機制，所以上面這個例子會發生錯誤， $(this).attr_i 會不存在，會alert出 'undefined' ，要新增屬性的話要直接加到最基本的 <span class="caps">DOM</span> Node 上，不可以放在jQuery物件上，要存取DOM Node可以用 <code>subHead.get(0)</code> 或是 <code>subHead[0]</code> ，後者我沒測試過就是。</p>]]>
</content>
</entry>

<entry>
<title>Konami Command</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/20/konami-command/" />
<modified>2008-09-20T14:11:21Z</modified>
<issued>2008-09-20T13:59:29Z</issued>
<id>tag:blog.othree.net,2008://1.539</id>
<created>2008-09-20T13:59:29Z</created>
<summary type="text/plain">↑ ↑ ↓ ↓ ← → ← → B A 這有名的秘技相信大家都有印象，前陣子Google Reader還拿了這個指令來用，最近突然很想把它寫出來，今天下午終於花了些時間弄出來，在這個js檔案裡面定義了一個konami的自定函式，只要把輸入命令後想要做的動作寫成function作為參數來呼叫這個函式即可，以執行一個alert動作為例： konami(function(){alert(&apos;You got 30 lifes.&apos;)}); Konami Command Script Konami Code(Command)...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>script</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p><strong>↑ ↑ ↓ ↓ ← → ← → B A</strong></p>

<p>這有名的秘技相信大家都有印象，前陣子Google Reader還拿了這個指令來用，最近突然很想把它寫出來，今天下午終於花了些時間弄出來，在這個js檔案裡面定義了一個konami的自定函式，只要把輸入命令後想要做的動作寫成function作為參數來呼叫這個函式即可，以執行一個alert動作為例：</p>



<pre><code>konami(function(){alert('You got 30 lifes.')});</code></pre>




<ul>
<li><a href="http://othree.net/projects/konami/">Konami Command Script</a></li>
<li><a href="http://en.wikipedia.org/wiki/Konami_Command">Konami Code(Command)</a></li>
</ul>

]]>

</content>
</entry>

<entry>
<title>CSS TIP - 縮排和文字垂直置中</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/13/css-indent-and-middle-text/" />
<modified>2008-09-17T07:25:47Z</modified>
<issued>2008-09-13T01:39:17Z</issued>
<id>tag:blog.othree.net,2008://1.538</id>
<created>2008-09-13T01:39:17Z</created>
<summary type="text/plain">今天要來介紹的這個CSS TIP，一部分是為了應付IE的box model才出現的。 首先，我有一個固定寬高的頁首區塊，也就是我接下來要介紹的CSS TIP所可以應用的地方，這種頁首區塊內的文字通常只有一行，其他類似的物件還有各種標題（h1~h6）、導覽列清單（li）等。這些區塊物件在還沒有任何設定的時候，裡面的文字通常都是貼齊左上角的，這邊舉一個 h1標題 的例子，它的 CSS Code 如下： h1 { font-size: 200%; color: #fff; background: #000; height: 100px; } 顯示結果如下：...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>css-html</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>今天要來介紹的這個CSS <span class="caps">TIP</span>，一部分是為了應付IE的box model才出現的。</p>

<p>首先，我有一個固定寬高的頁首區塊，也就是我接下來要介紹的CSS <span class="caps">TIP</span>所可以應用的地方，這種頁首區塊內的文字通常只有一行，其他類似的物件還有各種標題（h1~h6）、導覽列清單（li）等。這些區塊物件在還沒有任何設定的時候，裡面的文字通常都是貼齊左上角的，這邊舉一個 <strong>h1標題</strong> 的例子，它的 <span class="caps">CSS</span> Code 如下：</p>



<pre><code>h1 {
    font-size: 200%;
    color: #fff;
    background: #000;
    height: 100px;
}
</code></pre>



<p>顯示結果如下：</p>

<p><img src="http://blog.othree.net/log/2008/09/13/css-indent-and-middle-text/first.png" alt="" height="130" width="300" /></p>]]>
<![CDATA[<p>這通常不是我們想要的效果，我們可能想要有一點內距、文字水平置中、垂直置中、或是把文字藏起來，用背景圖來代替，不過隨便設定padding，可能就會遇到IE的box model問題，雖然IE 7已經可以用標準模式，但是IE 6的使用者還很多，目前還不能忽略這個問題。除了垂直置中以外，其他幾種要求大概都可以簡單達成，如果是用表格排版的話連垂直置中也不是問題，不過基本上我不考慮表格排版就是，一般的作法有CSS hack和多層div兩種，我要介紹的則是用line-height和text-indent兩種屬性來達到我們的需求，不用CSS hack和多層div。首先就來把文字垂直置中吧，這邊我用的是line-height（行高）這個屬性，只要設定的高度和區塊高度一樣（此例為100px），這單一行的文字就會垂直置中了，結果如下圖：</p>

<p><img src="http://blog.othree.net/log/2008/09/13/css-indent-and-middle-text/second.png" alt="" height="130" width="300" /></p>

<p>如果想要文字水平也置中，只要加上 <code>text-align: center;</code> 就可以了，不過我比較喜歡讓文字靠左，然後留一點邊距，讓文字不要這麼貼齊邊緣，這時可以用text-indent（首行縮排）這個屬性，因為內文只有一行，所以可以偷偷用這個屬性來做出padding-left的效果，如果文字是多行的話，大概上個行高設定就讓你的內文爆炸了吧XD。加上15px縮排的結果如下圖：</p>

<p><img src="http://blog.othree.net/log/2008/09/13/css-indent-and-middle-text/third.png" alt="" height="130" width="300" /></p>

<p>text-indent除了可以製造內距的效果之外，還可以用來把文字隱藏，免得檔到背景圖，只要把值設成負的，例如<strong>-1000000px</strong>，文字就會跑到視窗可視範圍之外，要保險一點還可以加上 <code>overflow: hidden;</code> 的設定，讓超出區塊範圍的東西隱藏起來。以上就是本次的CSS <span class="caps">TIP</span>內容，希望能幫到大家，下篇應該會說javascript的東西吧。</p>

<p class="update">補充：考量到親和力的情況下，還是比較推薦使用img標籤配合alt屬性的替代文字的，這樣在圖片讀取不到的狀況下，也還是看得到文字內容。</p>]]>
</content>
</entry>

<entry>
<title>PHP Session</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/11/php-session/" />
<modified>2008-09-12T10:10:26Z</modified>
<issued>2008-09-10T18:21:37Z</issued>
<id>tag:blog.othree.net,2008://1.537</id>
<created>2008-09-10T18:21:37Z</created>
<summary type="text/plain"> session_start(); session_register(&apos;id&apos;); $_SESSION[&apos;id&apos;] = 1234; 本來查文件是說直接用$_SESSION這個變數就可以，不過測試過後還是要用session_register註冊一下變數名稱，不然會沒辦法把session傳到其他頁面。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>script</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<pre><code>
session_start();
session_register('id');
$_SESSION['id'] = 1234;
</code></pre>



<p>本來查文件是說直接用$_SESSION這個變數就可以，不過測試過後還是要用session_register註冊一下變數名稱，不然會沒辦法把session傳到其他頁面。</p>]]>

</content>
</entry>

<entry>
<title>我的Google Chrome評測</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/07/google-chrome-comment/" />
<modified>2008-09-07T01:42:33Z</modified>
<issued>2008-09-06T17:30:05Z</issued>
<id>tag:blog.othree.net,2008://1.536</id>
<created>2008-09-06T17:30:05Z</created>
<summary type="text/plain">推出已經3天的Google瀏覽器，還蠻讓人期待最後正式版的樣子，不過目前有一些問題我覺得要先解決，首先是安裝問題，不少人無法安裝，我自己也有一台電腦是這樣，後來抓了離線版安裝檔順利安裝了，但是卻有一些功能和設定不能正常使用。另一個是memory leak問題，雖然Google說他們用多個process來處理記憶體問題，但不表示就可以不處理這問題，不然像我還是成功的讓Google Chrome吃了1G的記憶體。 Firefox 3我不管怎樣弄大概吃到500多MB就最多了，當然我的測試不是開無限多圖，無限多分頁啦，基本上是開一個數百張圖的網頁，然後我發現Google Chrome只要我一直卷上卷下，那個記憶體就會越吃越多XD。 再來講講優點，其實就是，使用者介面的效果很棒，而且很流暢，我最喜歡的就是書籤工具列的切換，有兩種，第一種是平常看網頁的時候，直接Ctrl+B，就會有類似slide out感覺的動畫效果，另外一種則是隱藏書籤列時開空白新分頁，那個預設的頁面上也有個書籤工具列，如果這時候按下Ctrl + B，就會看到網頁上的書籤工具列往上移動和視窗的介面部分接在一起，感覺棒，而且效果很流暢。 另外就是用的訊息蠻有趣的，除了讓一堆人重病的「是不是我講錯什麼話讓你不開心了？」以外，確定反安裝後，還可以回他說「我沒有不高興（I am not unhappy）。」不過這些訊息在日文版似乎都修掉了，感覺有點可惜，又不過反正我也不會去用日文版，也覺得也沒差啦。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>software</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>推出已經3天的Google瀏覽器，還蠻讓人期待最後正式版的樣子，不過目前有一些問題我覺得要先解決，首先是安裝問題，不少人無法安裝，我自己也有一台電腦是這樣，後來抓了離線版安裝檔順利安裝了，但是卻有一些功能和設定不能正常使用。另一個是memory leak問題，雖然Google說他們用多個process來處理記憶體問題，但不表示就可以不處理這問題，不然像我還是成功的讓Google Chrome吃了1G的記憶體。</p>

<p><a href="http://www.flickr.com/photos/othree/2823904128/" title="Flickr 上 othree 的 1G"><img src="http://farm4.static.flickr.com/3050/2823904128_03e9f343e7_o.png" width="468" height="300" alt="1G" /></a></p>

<p>Firefox 3我不管怎樣弄大概吃到500多MB就最多了，當然我的測試不是開無限多圖，無限多分頁啦，基本上是開一個數百張圖的網頁，然後我發現Google Chrome只要我一直卷上卷下，那個記憶體就會越吃越多XD。</p>

<p>再來講講優點，其實就是，使用者介面的效果很棒，而且很流暢，我最喜歡的就是書籤工具列的切換，有兩種，第一種是平常看網頁的時候，直接Ctrl+B，就會有類似slide out感覺的動畫效果，另外一種則是隱藏書籤列時開空白新分頁，那個預設的頁面上也有個書籤工具列，如果這時候按下Ctrl + B，就會看到網頁上的書籤工具列往上移動和視窗的介面部分接在一起，感覺棒，而且效果很流暢。</p>

<p>另外就是用的訊息蠻有趣的，除了讓一堆人<a href="http://www.flickr.com/photos/othree/2830629010/">重病</a>的「是不是我講錯什麼話讓你不開心了？」以外，確定反安裝後，還可以回他說「我沒有不高興（I am not unhappy）。」不過這些訊息在日文版似乎都修掉了，感覺有點可惜，又不過反正我也不會去用日文版，也覺得也沒差啦。</p>

<p><a href="http://www.flickr.com/photos/othree/2824058623/" title="Flickr 上 othree 的 我沒有不高興"><img src="http://farm4.static.flickr.com/3007/2824058623_1d1fda1eb9.jpg" width="500" height="374" alt="我沒有不高興" /></a></p>]]>

</content>
</entry>

<entry>
<title>Picasa 3 和 Picasa Web</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/04/picasa-3-and-picasaweb/" />
<modified>2008-09-03T19:06:15Z</modified>
<issued>2008-09-03T17:09:03Z</issued>
<id>tag:blog.othree.net,2008://1.535</id>
<created>2008-09-03T17:09:03Z</created>
<summary type="text/plain">就在全世界都在關注Google瀏覽器的時候，Google其實還同時公開了新版的Picasa Web和桌機的Picasa 3 beta版，一如往常的我懶得花篇幅介紹各種新功能，不過現在Google超貼心，都會提供YouTube影片來介紹軟體的新功能：Picasa 3 beta、Picasa Web的新功能，人臉辨識（目前只有英文版有）。 新功能在Youtube的影片都介紹的很詳細了，所以我要介紹的就是比較其他的東西，首先是Picasa Web的人臉辨識可以抓到Mii的大頭，其實不只Mii的大頭，還有一堆有的沒的遊戲角色都抓的到XD。 另外一個則是Picasa 3內新附的圖片瀏覽器Picasa Photo Viewer，功能和設定選項還不多，不過介面實在蠻漂亮的，有裝Picasa 3的人可以順便玩玩。 Introducing Picasa 3.0...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>software</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>就在全世界都在關注<a href="http://www.google.com/chrome/">Google瀏覽器</a>的時候，Google其實還同時公開了新版的<a href="http://picasaweb.google.com/home">Picasa Web</a>和桌機的<a href="http://picasa.google.com/intl/en_us/">Picasa 3 beta</a>版，一如往常的我懶得花篇幅介紹各種新功能，不過現在Google超貼心，都會提供YouTube影片來介紹軟體的新功能：<a href="http://tw.youtube.com/watch?v=rskC6c_5L1M">Picasa 3 beta</a>、<a href="http://tw.youtube.com/watch?v=teeGF-w5Cpw">Picasa Web的新功能，人臉辨識</a>（目前只有英文版有）。</p>

<p>新功能在Youtube的影片都介紹的很詳細了，所以我要介紹的就是比較其他的東西，首先是Picasa Web的人臉辨識可以抓到Mii的大頭，其實不只Mii的大頭，還有一堆有的沒的遊戲角色都抓的到XD。</p>

<p><a href="http://blog.othree.net/log/2008/09/04/picasa-3-and-picasaweb/name-tag.png"><img src="http://blog.othree.net/assets_c/2008/09/name-tag-thumb-400x314.png" alt="一堆Mii大頭" height="314" width="400" /></a></p>

<p>另外一個則是Picasa 3內新附的圖片瀏覽器<strong>Picasa Photo Viewer</strong>，功能和設定選項還不多，不過介面實在蠻漂亮的，有裝Picasa 3的人可以順便玩玩。</p>

<p><a href="http://blog.othree.net/log/2008/09/04/picasa-3-and-picasaweb/picasa-photo-viewer.png"><img src="http://blog.othree.net/assets_c/2008/09/picasa-photo-viewer-thumb-400x250.png" alt="光箱介面真不錯" height="250" width="400" /></a></p>


<ul>
<li><a href="http://googleblog.blogspot.com/2008/09/introducing-picasa-30-and-big-changes.html" title="and big changes for Picasa Web Albums">Introducing Picasa 3.0</a></li>
</ul>

]]>

</content>
</entry>

<entry>
<title>Google Chrome !!</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/09/02/google-chrome/" />
<modified>2008-09-02T02:23:20Z</modified>
<issued>2008-09-02T02:00:57Z</issued>
<id>tag:blog.othree.net,2008://1.534</id>
<created>2008-09-02T02:00:57Z</created>
<summary type="text/plain">前陣子就聽說Google要推出瀏覽器了，今天起來後真的看到Google公布消息，網路上也到處鬧的沸沸揚揚的，目前Google是說使用WebKit做render engine，Javascript則是使用V8引擎，是Google自己開發的Virtual Machine，目前大部分和瀏覽器相關的訊息都在官方發表的Google Chrome的簡介漫畫裡面，包括我上面提到的兩點，還有介面的設計、Open Source、一些使用概念等。Google Blogsphere偷倒了幾張使用畫面，我也從他們那偷一張過來放:P 我比較驚訝的是Google Chrome沒有工具列，之前已經有一個IE7這樣做失敗了，不知道Google表現會怎樣就是，總之，明天就可以下載測試版了\A_A/。 A fresh take on the browser...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>web</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>前陣子就聽說Google要推出瀏覽器了，今天起來後真的看到Google公布消息，網路上也到處鬧的沸沸揚揚的，目前Google是說使用WebKit做render engine，Javascript則是使用V8引擎，是Google自己開發的Virtual Machine，目前大部分和瀏覽器相關的訊息都在官方發表的Google Chrome的<a href="http://books.google.com/books?id=8UsqHohwwVYC&amp;printsec=frontcover%23PPA30%2CM1">簡介漫畫</a>裡面，包括我上面提到的兩點，還有介面的設計、Open Source、一些使用概念等。Google Blogsphere偷倒了幾張<a href="http://blogoscoped.com/archive/2008-09-02-n72.html">使用畫面</a>，我也從他們那偷一張過來放:P</p>

<p><img src="http://blog.othree.net/log/2008/09/02/google-chrome/google-chrome-screenshot.jpg" alt="藍色為主色，標籤頁在最上面，沒有標準工具列" height="359" width="440" /></p>

<p>我比較驚訝的是Google Chrome沒有工具列，之前已經有一個IE7這樣做失敗了，不知道Google表現會怎樣就是，總之，明天就可以下載測試版了\A_A/。</p>


<ul>
<li><a href="http://googleblog.blogspot.com/2008/09/fresh-take-on-browser.html">A fresh take on the browser</a></li>
</ul>

]]>

</content>
</entry>

<entry>
<title>光之穹頂</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/08/31/dome-of-light/" />
<modified>2008-09-01T10:31:00Z</modified>
<issued>2008-08-30T16:27:05Z</issued>
<id>tag:blog.othree.net,2008://1.533</id>
<created>2008-08-30T16:27:05Z</created>
<summary type="text/plain"> 上個週末去高雄參加了結構工程研討會（所以沒去COSCUP），順便參加了工程參觀的捷運美麗島站，所以有機會看到還沒開放的光之穹頂，這大概是我這次高雄行印象最深刻的一個景點了，高雄捷運美麗島站將會是兩條線的交會處，也是唯一的轉乘站，捷運站也座落在高雄交通要到的中正路和中山路路口，我想等正式開放後，一定會成為新的高雄地標，不過絕對不只是因為他交通要衝的關係，站內的光之穹頂實在令人印象深刻。高雄捷運站體在設計階段就已經把公共藝術放進來，之前已經很有名的像是中央公園站的那個天花板(?)，不過中央公園站更有名的應該是意外成為許願池的許願池吧，而這樣的規劃讓高雄捷運站整個感覺表現就是很出色，不過也不是說台北捷運站比較爛，台北捷運站當初設計階段還沒有公共藝術品的需求，而是法案通過後才加上的。不扯別的，美麗島站有四個主要出口，進到地下一樓後，就會直接到這個廣場，廣場的天花板就是光之穹頂，實在是很漂亮，我的照片拍的不夠好，曝光好像不太夠，希望大家未來都可以親自去看看。...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>diary</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p><a href="http://www.flickr.com/photos/othree/2793040016/" title="Flickr 上 othree 的 光之芎頂"><img src="http://farm4.static.flickr.com/3241/2793040016_82976a5b80.jpg" width="500" height="375" alt="光之穹頂" /></a></p>

<p>上個週末去高雄參加了結構工程研討會（所以沒去COSCUP），順便參加了工程參觀的捷運美麗島站，所以有機會看到還沒開放的光之穹頂，這大概是我這次高雄行印象最深刻的一個景點了，高雄捷運美麗島站將會是兩條線的交會處，也是唯一的轉乘站，捷運站也座落在高雄交通要到的中正路和中山路路口，我想等正式開放後，一定會成為新的高雄地標，不過絕對不只是因為他交通要衝的關係，站內的光之穹頂實在令人印象深刻。高雄捷運站體在設計階段就已經把公共藝術放進來，之前已經很有名的像是中央公園站的那個天花板(?)，不過中央公園站更有名的應該是意外成為許願池的許願池吧，而這樣的規劃讓高雄捷運站整個感覺表現就是很出色，不過也不是說台北捷運站比較爛，台北捷運站當初設計階段還沒有公共藝術品的需求，而是法案通過後才加上的。不扯別的，美麗島站有四個主要出口，進到地下一樓後，就會直接到這個廣場，廣場的天花板就是光之穹頂，實在是很漂亮，我的照片拍的不夠好，曝光好像不太夠，希望大家未來都可以親自去看看。</p>]]>

</content>
</entry>

<entry>
<title>CSS大師的10條原則</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/08/28/10-principles-of-the-css-masters/" />
<modified>2008-08-28T04:00:31Z</modified>
<issued>2008-08-27T16:40:47Z</issued>
<id>tag:blog.othree.net,2008://1.532</id>
<created>2008-08-27T16:40:47Z</created>
<summary type="text/plain">原文：10 Principles of the CSS Masters 1. 保持CSS簡單乾淨 - Peter-Paul Koch 少用CSS hack。 2. CSS宣告盡量放進一行 - Jonathan Snook 舉例來說： body {margin: 0; padding: 0; background: #fff;} 不過這工作我覺得交給機器來做比較好。 3.使用簡化的寫法 - Roger Johansson 使用如下的簡化寫法： border-width: 0 1px 2px 3px; 而不是用border-top-width、border-right-width、border-bottom-width、border-left-width分開設訂定。 4.讓區塊元素自己填滿空間 -...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>css-html</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>原文：<a href="http://nettuts.com/html-css-techniques/10-principles-of-the-css-masters/">10 Principles of the <span class="caps">CSS</span> Masters</a></p>

<h4>1. 保持CSS簡單乾淨 - Peter-Paul Koch</h4>

<p>少用CSS hack。</p>

<h4>2. <span class="caps">CSS</span>宣告盡量放進一行 - Jonathan Snook</h4>

<p>舉例來說：</p>



<pre><code>body {margin: 0; padding: 0; background: #fff;}</code></pre>



<p>不過這工作我覺得交給機器來做比較好。</p>

<h4>3.使用簡化的寫法 - Roger Johansson</h4>

<p>使用如下的簡化寫法：</p>



<pre><code>border-width: 0 1px 2px 3px;</code></pre>



<p>而不是用border-top-width、border-right-width、border-bottom-width、border-left-width分開設訂定。</p>

<h4>4.讓區塊元素自己填滿空間 - Jonathan</h4>

<p>設定width的話，就不設定margin、padding，設定margin、padding的話，就不設定width，這樣可以迴避掉IE的box model錯誤。</p>

<h4>5.用float元素自己clear float - Trevor Davis</h4>

<p>其實是利用 <code>:after { clear: both; }</code>來做啦。</p>

<h4>6.使用負的邊界直 - Dan Cederholm</h4>

<p>讓物件突出更顯眼。</p>

<h4>7.使用CSS把版面置中 - Dan Cederholm</h4>

<p>固定寬度的版面配置，盡量使用CSS把內容置中。</p>

<h4>8.使用正確的DOCTYPE - Jeffrey Zeldman</h4>

<p>好處多多。</p>

<h4>9.使用CSS把物件置中 - Wolfgang Bartelme</h4>

<p>雖然不是指整個版面而是指所有想要置中的東西，不過原文的例子還是把網頁主內容來置中，結果和第七點蠻容易混淆的。</p>

<h4>10.善用大小寫轉換 - Trenton Moss</h4>

<p>和中文語系使用者關係不大。</p>

<p>最後看下來，扣掉第10點，9點中我有7點有做到吧...</p>]]>

</content>
</entry>

<entry>
<title>ECMAScript Harmony</title>
<link rel="alternate" type="text/html" href="http://blog.othree.net/log/2008/08/26/ecmascript-harmony/" />
<modified>2008-09-03T05:50:11Z</modified>
<issued>2008-08-25T16:21:02Z</issued>
<id>tag:blog.othree.net,2008://1.531</id>
<created>2008-08-25T16:21:02Z</created>
<summary type="text/plain">大約是上週的消息了，ECMAScript原來有兩個團隊在進行新標準的制定，分別是增加很多新功能的ECMAScript 4和以穩定為主的ECMAScript 3.1，不過在最近的會議，這兩個團隊被合併成為一個，並且改以ECMAScript 3.1為主，並把ECMAScript 4的部分功能放進3.1內。類似的事情之前才在HTML Working Group發生過，XHTML 2和HTML 5的時候狀況也是這樣，XHTML 2被認為太過理想化，無法推廣，於是有群人跑出來成立了WHATWG，並且制定了HTML，後來W3C也從善如流，重整HTML Working Group，並把HTML 5放進來，雖然HTML 5還沒制定完成，不過目前看起來就是很有希望成為下一代的HTML標準主流，雖然我對於他的制定進度還是不太滿～～ ECMAScript 4則是包含太多新功能，有一些被認為對網路不好，畢竟主導的是幾家大企業，裡面會有這些東西也不太讓人意外就是，總之目前制定到一半的ECMAScript 4就先被放棄了。 ECMAScript Harmony...</summary>
<author>
<name>othree</name>

<email>othree@gmail.com</email>
</author>
<dc:subject>web</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.othree.net/">
<![CDATA[<p>大約是上週的消息了，<a href="http://www.ecmascript.org/"><span class="caps">ECMAS</span>cript</a>原來有兩個團隊在進行新標準的制定，分別是增加很多新功能的ECMAScript 4和以穩定為主的ECMAScript 3.1，不過在最近的會議，這兩個團隊被合併成為一個，並且改以ECMAScript 3.1為主，並把ECMAScript 4的部分功能放進3.1內。類似的事情之前才在<a href="http://www.w3.org/html/wg/"><span class="caps">HTML</span> Working Group</a>發生過，<a href="http://www.w3.org/TR/xhtml2/"><span class="caps">XHTML</span> 2</a>和<a href="http://www.whatwg.org/specs/web-apps/current-work/"><span class="caps">HTML</span> 5</a>的時候狀況也是這樣，XHTML 2被認為太過理想化，無法推廣，於是有群人跑出來成立了<a href="http://www.whatwg.org/"><span class="caps">WHATWG</span></a>，並且制定了HTML，後來W3C也從善如流，重整HTML Working Group，並把HTML 5放進來，雖然<a href="http://www.w3.org/html/wg/html5/"><span class="caps">HTML</span> 5</a>還沒制定完成，不過目前看起來就是很有希望成為下一代的HTML標準主流，雖然我對於他的制定進度還是不太滿～～</p>

<p><span class="caps">ECMAS</span>cript 4則是包含太多新功能，有一些被認為對網路不好，畢竟主導的是幾家大企業，裡面會有這些東西也不太讓人意外就是，總之目前制定到一半的ECMAScript 4就先被放棄了。</p>


<ul>
<li><a href="http://ejohn.org/blog/ecmascript-harmony/"> ECMAScript Harmony</a></li>
</ul>

]]>

</content>
</entry>

</feed>