OSDN Git Service

version 0.6.10 & add html2comic_0.3
authoritozyun <itozyun@user.sourceforge.jp>
Wed, 16 Oct 2013 01:14:07 +0000 (10:14 +0900)
committeritozyun <itozyun@user.sourceforge.jp>
Wed, 16 Oct 2013 01:14:07 +0000 (10:14 +0900)
0.4.x/test/2.png [new file with mode: 0644]
0.4.x/test/html2comic_0.3.html [new file with mode: 0644]
0.4.x/test/index.html
0.6.x/js/core/03_XCallback.js
0.6.x/js/dom/10_XDomStyle.js
0.6.x/js/dom/11_XDomAttr.js [new file with mode: 0644]
0.6.x/js/dom/12_XDomParser.js
0.6.x/js/dom/14_XDomNode.js
0.6.x/js/dom/17_XView.js
0.6.x/js/ui/DisplayNodeStyle.js

diff --git a/0.4.x/test/2.png b/0.4.x/test/2.png
new file mode 100644 (file)
index 0000000..1fb52ab
Binary files /dev/null and b/0.4.x/test/2.png differ
diff --git a/0.4.x/test/html2comic_0.3.html b/0.4.x/test/html2comic_0.3.html
new file mode 100644 (file)
index 0000000..9f30a7b
--- /dev/null
@@ -0,0 +1,477 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\r
+<html xmlns:v="urn:schemas-microsoft-com:vml"><!-- InstanceBegin template="/Templates/base.dwt" codeOutsideHTMLIsLocked="false" -->\r
+<head>\r
+       <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\r
+       <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\r
+       <meta http-equiv="Content-Language" content="ja">\r
+       <meta http-equiv="Content-Script-Type" content="text/javascript">\r
+       <meta http-equiv="Content-Style-Type" content="text/css">\r
+       <meta http-equiv="imagetoolbar" content="no">\r
+       <link rel="stylesheet" type="text/css" href="../stylesheets/common.css">\r
+       <!-- InstanceBeginEditable name="doctitle" -->\r
+       <title>ぺったんR html 実証サンプル version 0.3 | pettanR</title>\r
+       <!-- InstanceEndEditable -->\r
+       <!-- InstanceBeginEditable name="head" -->\r
+       <style type="text/css">\r
+                               \r
+/*  PettanR Comic\r
+--------------------------------------------------------------------------------------*/\r
+.test_pettanr-comic-wrapper {\r
+       margin : 1em auto;\r
+}\r
+       .test_pettanr-comic-panel {\r
+               border-style : solid;\r
+               border-color : #111;\r
+               position     : relative;\r
+               margin       : 1em 0;\r
+               overflow     : hidden;\r
+       }\r
+               .test_pettanr-comic-panel img,\r
+               .test_pettanr-comic-balloon {\r
+                       position : absolute;\r
+               }\r
+                       .test_pettanr-comic-balloon img {\r
+                               width        : 100%;\r
+                               height       : 100%;\r
+                       }\r
+                       .test_pettanr-comic-speech {\r
+                               margin       : 0 !important;\r
+                               padding      : 0 !important;\r
+                               display      : table;\r
+                               table-layout : fixed;\r
+                               position     : absolute;\r
+                               top          : 0;\r
+                               left         : 16.6%;\r
+                               width        : 66.6%;\r
+                               height       : 100%;\r
+                               *height      : auto;\r
+                               *top         : 50% !important;\r
+                       }\r
+                               .test_pettanr-comic-speech-inner {\r
+                                       vertical-align : middle;\r
+                                       display        : table-cell;\r
+                                       *display       : block;\r
+                                       zoom           : 1;\r
+                                       *position      : relative;\r
+                                       *top           : -50%;\r
+                               }\r
+                                       .test_pettanr-comic-speech p {\r
+                                               padding : 0.5em 0 !important;\r
+                                               margin  : 0 !important;\r
+                                       }\r
+                                               .test_pettanr-comic-speech strong {\r
+                                                       font-weight    : bold;\r
+                                               }\r
+                                               .test_pettanr-comic-speech em,\r
+                                               .test_pettanr-comic-speech i {\r
+                                                       font-style     : italic;\r
+                                               }\r
+                                               .test_pettanr-comic-speech samp,\r
+                                               .test_pettanr-comic-speech code {\r
+                                                       font-family    : monospace;\r
+                                               }\r
+               .test_pettanr-comic-ground {\r
+                       position            : absolute;\r
+                       top                 : 0;\r
+                       left                : 0;\r
+                       width               : 0;\r
+                       *width              : 100%; /* for ie5.5- */\r
+                       height              : 100%;\r
+                       overflow            : hidden;\r
+                       padding-left        : 100%;\r
+                       background-repeat   : repeat;\r
+                       background-position : 0 0;\r
+               }\r
+\r
+       .show-border .test_pettanr-comic-speech {\r
+               border : 1px solid green;\r
+       }               \r
+       .show-border .test_pettanr-comic-speech div {\r
+               border : 1px solid red;\r
+       }\r
+       .show-border .test_pettanr-comic-speech p {\r
+               border : 1px solid orange;\r
+       }\r
+       .show-border .test_pettanr-comic-speech span,\r
+       .show-border .test_pettanr-comic-speech strong,\r
+       .show-border .test_pettanr-comic-speech em,\r
+       .show-border .test_pettanr-comic-speech i,\r
+       .show-border .test_pettanr-comic-speech samp,\r
+       .show-border .test_pettanr-comic-speech code {\r
+               border : 1px solid blue;\r
+       }\r
+       </style>\r
+       <!-- InstanceEndEditable -->\r
+</head>\r
+\r
+<body>\r
+    <div id="general-content">\r
+        <div id="outer-wrapper">\r
+            \r
+            <div id="header">\r
+                <div class="base-content-width" style="position:relative;">\r
+                    <h1><a href="../index.html">pettanR</a></h1>\r
+                <!-- global navi -->\r
+                    <div id="global-navi">\r
+                        <noscript id="noscript-alert">You need to have JavaScript enabled.</noscript>\r
+                    </div>\r
+                </div>\r
+            </div>\r
+            \r
+            <div id="inner-wrapper" class="base-content-width">\r
+                               <!-- InstanceBeginEditable name="main_content" -->\r
+                               <div id="main">\r
+                                       <div id="breadcrumb"><a href="index.html">テスト インデックス</a> &gt; ぺったんR html 実証サンプル version 0.3</div>\r
+                                       \r
+                                       <h2>ぺったんR html 実証サンプル version 0.3 2013.09.23</h2>\r
+                                       <h3>はじめに</h3>\r
+                                       <p>html + css の表現力を活用してマンガ状の表示を行うのことが ぺったん、及び ぺったんR の肝です.</p>\r
+                                       <p>この文書では ぺったんR API などで作られたマンガ作品データがブラウザ上でどのような html になるのか? を示す.文書はあくまで実証サンプルであり、必ずしもここで示した html に従わなくてはいけないわけではない.</p>\r
+                                       <p>また、ぺったんR API によって提供されたマンガデータが、必ずしも html によって表示されなければいけないわけでもない.</p>\r
+                                       <p>この文書で示された html 構造と css は ぺったんR プロジェクトのライセンスの元でユーザーが自由に利用できる.</p>\r
+                                       \r
+                                       <h3>機能一覧</h3>\r
+                                       <dl class="dl-table clearfix">\r
+                                               <dt>正常動作確認済みブラウザ</dt>\r
+                                               <dd>ie5+, Firefox3.6+, NN6.2+, Opera7.11 & 9.64+, Konqueror4.8, Safari3.2, Iron5</dd>\r
+                                               <dt>吹きだしの語調</dt>\r
+                                               <dd>通常の語調のほかに、強調、コンピュータの合成音声</dd>\r
+                                               <dt>脚本情報</dt>\r
+                                               <dd>テキストブラウザ・音声読み上げブラウザでも作品を読むことができる(はず)</dd>\r
+                                               <dt>リッチテキスト機能</dt>\r
+                                               <dd>まだ、、、</dd>\r
+                                       </dl>\r
+                                       <p>実際の運用時には、js によって吹き出し画像がベクター画像に置き換えられたり、クライアント側で反転画像の生成を行うが、本文書では扱わない.</p>\r
+                                       \r
+                                       <h3>表示サンプル</h3>\r
+                                       <p>表示サンプルは今後充実していくこととする.</p>\r
+                                       \r
+                                       <div id="swbutton" class="button" onclick="switchBorder();" style="width:100px;margin:10px auto;">show border</div>\r
+                                       \r
+                                       <div id="html2comic">\r
+                                               <div class="test_pettanr-comic-wrapper" style="width: 400px;">\r
+                                                       <div class="test_pettanr-comic-panel" style="border-width: 2px;height: 300px;">\r
+                                                               <div class="test_pettanr-comic-balloon"\r
+                                                                       style="width: 200px; height: 200px; left: -4px; top: -10px; z-index: 3;"\r
+                                                               >\r
+                                                                       <img src="../system_pictures/_w7.gif" alt="ようやく口を開くと">\r
+                                                                       <div class="test_pettanr-comic-speech">\r
+                                                                               <div class="test_pettanr-comic-speech-inner"\r
+                                                                                       style="font-size: 1em; text-align: left; color: rgb(0, 0, 0);"\r
+                                                                               >\r
+                                                                                       <p>それじゃほとんど意味がないじゃねえか</p>\r
+                                                                               </div>\r
+                                                                       </div>\r
+                                                               </div>\r
+                                                               <img src="2.gif"\r
+                                                                       alt="頭を抱えるキンイチであった"\r
+                                                                       title="キャラクター名:キンイチ, 絵師:yas"\r
+                                                                       longdesc="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi"\r
+                                                                       width="247" height="273" style="top: 101px; left: 86px; z-index: 2;">\r
+                                                               <div class="test_pettanr-comic-ground" style="z-index: 1; background-color: #003;">深いため息に空気までが暗く重々しい…</div>\r
+                                                       </div>\r
+                                                       <div class="test_pettanr-comic-panel" style="border-width: 2px; height: 235px;">\r
+                                                               <img src="../resource_pictures/1.png"\r
+                                                                       alt="目の血走ったペンギンが拳を握り締めている"\r
+                                                                       title="キャラクター名:キンイチ, 絵師:yas"\r
+                                                                       longdesc="http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi"\r
+                                                                       width="166" height="272" style="left: 148px; top: -2px; z-index: 0;"\r
+                                                               >\r
+                                                               <div class="test_pettanr-comic-balloon"\r
+                                                                       style="width: 200px; height: 160px; left: -29px; top: 39px; z-index: 1;"\r
+                                                               >\r
+                                                                       <img src="../system_pictures/_w5.gif" alt="ペンギン曰く">\r
+                                                                       <div class="test_pettanr-comic-speech">\r
+                                                                               <div class="test_pettanr-comic-speech-inner">\r
+                                                                                       <p>どの環境でもそれなりにセリフを表示する</p>\r
+                                                                                       <p>これには慎重を要する</p>\r
+                                                                               </div>\r
+                                                                       </div>\r
+                                                               </div>\r
+                                                               <div class="test_pettanr-comic-balloon"\r
+                                                                       style="width: 100px; height: 80px; left: 300px; top: 80px; z-index: 2;"\r
+                                                               >\r
+                                                                       <img src="../system_pictures/_w19.gif" alt="ペンギン一息ついて">\r
+                                                                       <div class="test_pettanr-comic-speech">\r
+                                                                               <div class="test_pettanr-comic-speech-inner">\r
+                                                                                       <p>そやそや</p>\r
+                                                                               </div>\r
+                                                                       </div>\r
+                                                               </div>\r
+                                                       </div>\r
+                                               </div>\r
+                                       </div>\r
+                                       \r
+                                       <h3>画像や css に対応しない Web ブラウザでの表示</h3>\r
+                                       <p>マンガコンテンツとして推奨ブラウザや対応ブラウザで意図したとおりに表示できるだけでなく、html 文書として正しく書かれていなくてはいけない.</p>\r
+                                       <p>テキストブラウザや web クローラ、音声読み上げブラウザでの表示のされ方を勘案し html 構造を設計する.</p>\r
+                                       <p>同様の着眼で代替テキストを用意する.</p>\r
+                                       <h4>テキストブラウザでの表示イメージ</h4>\r
+                                       <pre><samp>\r
+\r
+ようやく口を開くと\r
+「それじゃほとんど意味がないじゃねえか」\r
+頭を抱えるキンイチであった\r
+深いため息に空気までが暗く重々しい…\r
+\r
+目の血走ったペンギンが拳を握り締めている\r
+ペンギン曰く\r
+「どの環境でもそれなりにセリフを表示する」\r
+これには慎重を要する\r
+ペンギン一息ついて\r
+「そやそや」\r
+                                       </samp></pre>\r
+                                       \r
+                                       <h3>ブラウザ検証</h3>\r
+                                       <h4>対応ブラウザ</h4>\r
+                                       <p>NN6.2+, firefox3.6, ie5+, Safari3.2, Iron5, opera7.11 & 9.64+, Konqueror4.8(windows)</p>\r
+                                       <h4>準対応ブラウザ</h4>\r
+                                       <p>Opera6.06( <code>overflow:hidden</code> が孫要素に対して利かず(?)要素がパネルをはみ出す z-index が overflow:hidden なパネルを超えて効いてしまう)</p>\r
+                                       <p>Opera8.02 パネルの枠線が一部欠けてしまう.alt タグの内容が画面に表示される.opera7.11 ではこの不具合は起こらない.</p>\r
+                                       <h4>非対応ブラウザ</h4>\r
+                                       <p>NN6(テキスト表示位置がずれる.z-index 指定が画面にゴミを出してしまう), Opera5( 日本語に非対応で文字化けする )</p>\r
+                                       \r
+                                       <h3>ソースコード</h3>\r
+                                       <h4>html 部分</h4>\r
+                                       <p>パネルピクチャはひとつの &lt;img&gt; タグで表示されます.</p>\r
+                                       <p>バルーンは、位置とサイズを決めるための &lt;div&gt; の中に吹きだし画像のための &lt;img&gt; と テキストを上下中央配置するための &lt;p&gt; と &lt;span&gt; からなる.</p>\r
+                                       <pre class="brush: xml;">\r
+&lt;div class=&quot;test_pettanr-comic-wrapper&quot; style=&quot;width: 400px;&quot;&gt;\r
+       &lt;div class=&quot;test_pettanr-comic-panel&quot; style=&quot;border-width: 2px;height: 300px;&quot;&gt;\r
+               &lt;div class=&quot;test_pettanr-comic-balloon&quot;\r
+                       style=&quot;width: 200px; height: 200px; left: -4px; top: -10px; z-index: 3;&quot;\r
+               &gt;\r
+                       &lt;img src=&quot;../system_pictures/_w7.gif&quot; alt=&quot;ようやく口を開くと&quot;&gt;\r
+                       &lt;div class=&quot;test_pettanr-comic-speech&quot;&gt;\r
+                               &lt;div class=&quot;test_pettanr-comic-speech-inner&quot;\r
+                                       style=&quot;font-size: 1em; text-align: left; color: rgb(0, 0, 0);&quot;\r
+                               &gt;\r
+                                       &lt;p&gt;それじゃほとんど意味がないじゃねえか&lt;/p&gt;\r
+                               &lt;/div&gt;\r
+                       &lt;/div&gt;\r
+               &lt;/div&gt;\r
+               &lt;img src=&quot;2.gif&quot;\r
+                       alt=&quot;頭を抱えるキンイチであった&quot;\r
+                       title=&quot;キャラクター名:キンイチ, 絵師:yas&quot;\r
+                       longdesc=&quot;http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi&quot;\r
+                       width=&quot;247&quot; height=&quot;273&quot; style=&quot;top: 101px; left: 86px; z-index: 2;&quot;&gt;\r
+               &lt;div class=&quot;test_pettanr-comic-ground&quot; style=&quot;z-index: 1; background-color: #003;&quot;&gt;深いため息に空気までが暗く重々しい…&lt;/div&gt;\r
+       &lt;/div&gt;\r
+       &lt;div class=&quot;test_pettanr-comic-panel&quot; style=&quot;border-width: 2px; height: 235px;&quot;&gt;\r
+               &lt;img src=&quot;../resource_pictures/1.png&quot;\r
+                       alt=&quot;目の血走ったペンギンが拳を握り締めている&quot;\r
+                       title=&quot;キャラクター名:キンイチ, 絵師:yas&quot;\r
+                       longdesc=&quot;http://sourceforge.jp/projects/pettanr/wiki/AboutKinichi&quot;\r
+                       width=&quot;166&quot; height=&quot;272&quot; style=&quot;left: 148px; top: -2px; z-index: 0;&quot;\r
+               &gt;\r
+               &lt;div class=&quot;test_pettanr-comic-balloon&quot;\r
+                       style=&quot;width: 200px; height: 160px; left: -29px; top: 39px; z-index: 1;&quot;\r
+               &gt;\r
+                       &lt;img src=&quot;../system_pictures/_w5.gif&quot; alt=&quot;ペンギン曰く&quot;&gt;\r
+                       &lt;div class=&quot;test_pettanr-comic-speech&quot;&gt;\r
+                               &lt;div class=&quot;test_pettanr-comic-speech-inner&quot;&gt;\r
+                                       &lt;p&gt;どの環境でもそれなりにセリフを表示する&lt;/p&gt;\r
+                                       &lt;p&gt;これには慎重を要する&lt;/p&gt;\r
+                               &lt;/div&gt;\r
+                       &lt;/div&gt;\r
+               &lt;/div&gt;\r
+               &lt;div class=&quot;test_pettanr-comic-balloon&quot;\r
+                       style=&quot;width: 100px; height: 80px; left: 300px; top: 80px; z-index: 2;&quot;\r
+               &gt;\r
+                       &lt;img src=&quot;../system_pictures/_w19.gif&quot; alt=&quot;ペンギン一息ついて&quot;&gt;\r
+                       &lt;div class=&quot;test_pettanr-comic-speech&quot;&gt;\r
+                               &lt;div class=&quot;test_pettanr-comic-speech-inner&quot;&gt;\r
+                                       &lt;p&gt;そやそや&lt;/p&gt;\r
+                               &lt;/div&gt;\r
+                       &lt;/div&gt;\r
+               &lt;/div&gt;\r
+       &lt;/div&gt;\r
+&lt;/div&gt;\r
+                                       </pre>\r
+                                       <h4>css 部分</h4>\r
+                                       <h5>上下中央配置(モダンブラウザ)</h5>\r
+                                       <p>css2 の <code>display: table, display: table-cell</code> を使って吹き出し内のテキストの上下中央配置を行う.</p>\r
+                                       <h5>上下中央配置(old IE)</h5>\r
+                                       <p><code>display: table</code> をサポートしない ie7 以下は、入れ子になった要素を上下に 50% ずらす、という手法で上下中央配置している.その様子を、show border ボタンを使って確認されたし.( 参考 <a href="http://scuderia-web.com/tips/xhtml_css/div_vertical_align.php" target="_blank">tableを使わずdivで縦位置を指定</a> )</p>\r
+                                       <h5>レイアウト計算負荷を提げる</h5>\r
+                                       <p>.test_pettanr-comic-ground でテキストをコマの外に飛ばしているのは、<code>padding-left : 100%; になる.</code></p><p><code>width : 0; *width : 100%; overflow : hidden </code>はどちらも無くても表示に変わりが無いが、それぞれレイアウト計算負荷が下がりそうなので指定してある.</p>\r
+                                       <pre class="brush: css;">\r
+.test_pettanr-comic-wrapper {\r
+       margin : 1em auto;\r
+}\r
+       .test_pettanr-comic-panel {\r
+               border-style : solid;\r
+               border-color : #111;\r
+               position     : relative;\r
+               margin       : 1em 0;\r
+               overflow     : hidden;\r
+       }\r
+               .test_pettanr-comic-panel img,\r
+               .test_pettanr-comic-balloon {\r
+                       position : absolute;\r
+               }\r
+                       .test_pettanr-comic-balloon img {\r
+                               width        : 100%;\r
+                               height       : 100%;\r
+                       }\r
+                       .test_pettanr-comic-speech {\r
+                               margin       : 0 !important;\r
+                               padding      : 0 !important;\r
+                               display      : table;\r
+                               table-layout : fixed;\r
+                               position     : absolute;\r
+                               top          : 0;\r
+                               left         : 16.6%;\r
+                               width        : 66.6%;\r
+                               height       : 100%;\r
+                               *height      : auto;\r
+                               *top         : 50% !important;\r
+                       }\r
+                               .test_pettanr-comic-speech-inner {\r
+                                       vertical-align : middle;\r
+                                       display        : table-cell;\r
+                                       *display       : block;\r
+                                       zoom           : 1;\r
+                                       *position      : relative;\r
+                                       *top           : -50%;\r
+                               }\r
+                                       .test_pettanr-comic-speech p {\r
+                                               padding : 0.5em 0 !important;\r
+                                               margin  : 0 !important;\r
+                                       }\r
+                                               .test_pettanr-comic-speech strong {\r
+                                                       font-weight    : bold;\r
+                                               }\r
+                                               .test_pettanr-comic-speech em,\r
+                                               .test_pettanr-comic-speech i {\r
+                                                       font-style     : italic;\r
+                                               }\r
+                                               .test_pettanr-comic-speech samp,\r
+                                               .test_pettanr-comic-speech code {\r
+                                                       font-family    : monospace;\r
+                                               }\r
+               .test_pettanr-comic-ground {\r
+                       position            : absolute;\r
+                       top                 : 0;\r
+                       left                : 0;\r
+                       width               : 0;\r
+                       *width              : 100%; /* for ie5.5- */\r
+                       height              : 100%;\r
+                       overflow            : hidden;\r
+                       padding-left        : 100%;\r
+                       background-repeat   : repeat;\r
+                       background-position : 0 0;\r
+               }\r
+                                       </pre>\r
+                                       <h3>履歴</h3>\r
+                                       <dl class="dl-table-small">\r
+                                               <dt>version 0.3</dt>\r
+                                               <dd>2013.09.23 公開.<br>\r
+                                                       脚本情報を html タグとして書き出し、通常の閲覧に際しては非表示、テキストブラウザ等に対しては表示となるように html と css を拡張.参考 <a href="http://sourceforge.jp/forum/message.php?msg_id=70069">RE: 脚本機能について</a><br>\r
+                                                       あるパネルで指定されたパネル要素の z-index が、他のパネルに影響しないか?調査の追加.参考 <a href="http://sourceforge.jp/forum/message.php?msg_id=70116">RE: パネルのZインデックスが適切でない</a>\r
+                                               </dd>\r
+                                               <dt>version 0.2</dt>\r
+                                               <dd>2013.08.10 公開.<br>\r
+                                                       吹き出し内での &lt;p&gt; タグによる段落分け(改行)に対応.<br>\r
+                                                       デフォルトでテキストの中央配置をやめる.<br>\r
+                                                       外す.<del>font-size : 14px; /* opera6 で使用 13px は不可 */</del><br>\r
+                                                       レンダリング負荷を下げる為の css 指定を追加 ( テキストの上下中央配置のための display:table に対して tabel-layout:fixed を追加 ).<br>\r
+                                                       &lt;img&gt; タグに longdesc を追加.title 属性で説明しきれなかった画像に関する情報が書いてある url を指示する手段としてとして適切ではないか、と考える.\r
+                                               </dd>\r
+                                               <dt>version 0.1</dt>\r
+                                               <dd>2012.05.04 公開.</dd>\r
+                                       </dl>\r
+                                       <h3>懸案</h3>\r
+                                       <p>スピーチの上下中央配置に使っている display:table を使ったテクニックに Firefox 3.5 で起きる不具合が報告されている.<a href="http://ie-style.blogspot.jp/2009/08/firefox-35-display-tabletable-row-table.html">Project IE: Firefox 3.5 の display: table;(table-row; table-cell;) 関連の挙動について:</a></p>\r
+                               </div>\r
+                               <!-- InstanceEndEditable -->\r
+            </div>\r
+        </div>\r
+    </div>\r
+    \r
+    <div id="footer-content"><!-- #BeginLibraryItem "/Library/footer.lbi" -->\r
+\r
+        <div id="footer">\r
+            <div id="footer-item-container" class="base-content-width clearfix">\r
+                <div class="footer-item-wrapper">\r
+                    <div class="footer-item">\r
+                        <h2>ぺったんR にようこそ</h2>\r
+                        <ul>\r
+                            <li>サンプル</li>\r
+                            <li>ぺったんRの特徴</li>\r
+                            <li>沿革</li>\r
+                        </ul>\r
+                        <h2>Test</h2>\r
+                        <ul>\r
+                            <li><a href="index.html">Test Index</a></li>\r
+                        </ul>\r
+                    </div>\r
+                </div>\r
+                <div class="footer-item-wrapper">\r
+                    <div class="footer-item">\r
+                        <h2>ドキュメント</h2>\r
+                        <ul>\r
+                            <li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForAuthors" rel="me" target="_blank">作家向けドキュメント</a></li>\r
+                            <li>絵師向けドキュメント</li>                                                    \r
+                            <li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForDevelopers" rel="me" target="_blank">開発者向けドキュメント</a></li>\r
+                            <li><a href="http://sourceforge.jp/projects/pettanr/wiki/ForWebmasters" rel="me" target="_blank">編集長向けドキュメント</a></li>\r
+                        </ul>\r
+                    </div>\r
+                </div>\r
+                <div class="footer-item-wrapper">\r
+                    <div class="footer-item">\r
+                        <h2>プロトタイプ</h2>\r
+                        <ul>\r
+                            <li><a href="http://pettanr.heroku.com/" rel="me" target="_blank">pettanr.heroku.com</a></li>\r
+                            <li><a href="../work.html" rel="console">ユーザーコンソール</a></li>\r
+                        </ul>\r
+                        <h2>Ajax contents</h2>\r
+                        <ul>\r
+                            <li><a href="../help/jp.xml">help | jp</a></li>\r
+                        </ul>\r
+                    </div>\r
+                </div>\r
+                <div class="footer-item-wrapper" style="width:170px;">\r
+                    <div class="footer-item" style="padding-right:0;">\r
+                        <h2>ぺったんRチーム</h2>\r
+                        <ul>\r
+                            <li>わたしたちについて</li>\r
+                            <li>ミッション</li>\r
+                            <li><a href="../diary/itozyun.xml">itozyun's diary</a></li>\r
+                            <li>個人情報保護方針</li>\r
+                            <li>作品の取り扱い</li>\r
+                            <li>お問い合わせ</li>\r
+                        </ul>\r
+                    </div>\r
+                </div>\r
+            </div>\r
+            <div id="copyright">Copyright (c) 2011-2012 pettanR team, some rights reserved.</div>\r
+        </div><!-- #EndLibraryItem -->\r
+       </div>\r
+       <script type="text/javascript">\r
+               var has_server_support = false;\r
+       </script>\r
+       <script type="text/javascript" src="../javascripts/common.js"></script>\r
+<!-- InstanceBeginEditable name="script" -->\r
+       <script type="text/javascript" src="../lib/syntaxhighlighter/scripts/shCore.js"></script>\r
+       <script type="text/javascript" src="../lib/syntaxhighlighter/scripts/shBrushJScript.js"></script>\r
+       <script type="text/javascript" src="../lib/syntaxhighlighter/scripts/shBrushXml.js"></script>\r
+       <script type="text/javascript" src="../lib/syntaxhighlighter/scripts/shBrushCss.js"></script>\r
+       <link type="text/css" rel="stylesheet" href="../lib/syntaxhighlighter/styles/shCoreDefault.css">\r
+       <script type="text/javascript">\r
+               SyntaxHighlighter.all();\r
+               \r
+               var btn = document.getElementById( 'swbutton' );\r
+               var elm = document.getElementById( 'html2comic' );\r
+               var cls = 'show-border';\r
+               var val = btn.firstChild.data\r
+               \r
+               function switchBorder(){\r
+                       var current = elm.className;\r
+                       elm.className = cls === current ? '' : cls;\r
+                       btn.firstChild.data = cls === current ? val: 'hide border';\r
+               }\r
+       </script>\r
+<!-- InstanceEndEditable -->\r
+</body>\r
+<!-- InstanceEnd --></html>\r
index 7835089..01f0bb4 100644 (file)
@@ -35,6 +35,8 @@
                                        <h2>テストインデックス</h2>\r
                                        <h3>ぺったんR html 実証サンプル</h3>\r
                                        <dl class="dl-table clearfix">\r
+                                               <dt><a href="html2comic_0.3.html">version 0.3 (13.09.23)</a></dt>\r
+                                               <dd>ぺったんR html 実証サンプル version 0.3</dd>      \r
                                                <dt><a href="html2comic_0.2.html">version 0.2 (13.08.10)</a></dt>\r
                                                <dd>ぺったんR html 実証サンプル version 0.2</dd>      \r
                                                <dt><a href="html2comic_0.1.html">version 0.1 (12.05.04)</a></dt>\r
index 5473ec6..ec30fa4 100644 (file)
@@ -6,9 +6,10 @@ X.Callback = {
        UN_LISTEN        :  1,\r
        STOP_PROPAGATION :  2,  // 上位階層への伝播のキャンセル\r
        CANCEL_NOW       :  4,  // 同一階層のリスナーのキャンセル\r
-       PREVENT_DEFAULT  :  8,  // 結果動作のキャンセル,\r
-       MONOPOLY         : 16,  // move event を独占する\r
-       SYS_CANCEL       : 32,\r
+       STOP_NOW         :  8,\r
+       PREVENT_DEFAULT  : 16,  // 結果動作のキャンセル,\r
+       MONOPOLY         : 32,  // move event を独占する\r
+       SYS_CANCEL       : 64,\r
        \r
        _LIVE_LIST : [],\r
        _POOL_LIST : [],\r
@@ -29,7 +30,11 @@ X.Callback = {
                        listener = arg0;\r
                        arg2     = arg1;\r
                } else {\r
-                       alert( 'Callback.create() fail!' );\r
+                       var v = '';\r
+                       for( var k in  arg0 ){\r
+                               v += k + '=' + arg0[ k ] + ' ';\r
+                       };\r
+                       alert( 'Callback.create() fail! ' + v );\r
                };\r
                \r
                f = self._POOL_LIST.pop();\r
index e018963..47a71e8 100644 (file)
@@ -1,4 +1,6 @@
-X.Style = {
+X.Dom = function(){ if( X.Dom._shortcut ) return X.Dom._shortcut.apply( this, arguments ); };
+
+X.Dom.Style = {
        /* font-size -> fontSize */
        camelize: function( cssProp ){
            var parts = cssProp.split( ' ' ).join( '' ).split( '-' ),
@@ -18,10 +20,10 @@ X.Style = {
        REG_LARGE : /[A-Z]/g,
        /* fontSize -> font-size */
        uncamelize: function( str ){
-               return str.split( ' ' ).join( '' ).replace( X.Style.REG_LARGE, '-$&' ).toLowerCase();
+               return str.split( ' ' ).join( '' ).replace( X.Dom.Style.REG_LARGE, '-$&' ).toLowerCase();
        },
        objToCssText : function( obj ){
-               var css = [], uncamelize = X.Style.uncamelize, p;
+               var css = [], uncamelize = X.Dom.Style.uncamelize, p;
                for( p in obj ){
                        css[ css.length ] = [ uncamelize( p ), obj[ p ] ].join( ':' );
                };
diff --git a/0.6.x/js/dom/11_XDomAttr.js b/0.6.x/js/dom/11_XDomAttr.js
new file mode 100644 (file)
index 0000000..e3414ba
--- /dev/null
@@ -0,0 +1,184 @@
+X.Dom.Attr = {\r
+       toName  : [],\r
+       toIndex : {\r
+               id           : 0,\r
+               className    : 1,\r
+               'class'      : 1, //\r
+               name         : 2,\r
+               title        : 3,\r
+               accessKey    : 4,\r
+               accesskey    : 4, //\r
+               tabIndex     : 5,\r
+               tabindex     : 5, //\r
+               dir          : 6,\r
+               lang         : 7,\r
+               'xml:lang'   : 8,\r
+               'xml:space'  : 9,\r
+               abbr         : 10,\r
+               accept       : 11,\r
+               acceptCharset : 12,\r
+               'accept-charset' : 12,\r
+               action       : 13,\r
+               align        : 14,\r
+               alink        : 15,\r
+               alt          : 16,\r
+               archive      : 17,\r
+               axis         : 18,\r
+               background   : 19,\r
+               bgColor      : 20,\r
+               bgcolor      : 20, //\r
+               border       : 21,\r
+               cellPadding  : 22,\r
+               cellpadding  : 22, //\r
+               cellSpacing  : 23,\r
+               cellspacing  : 23, //\r
+               ch           : 24,\r
+               'char'       : 24, //\r
+               chOff        : 25,\r
+               charoff      : 25, //\r
+               charset      : 26,\r
+               checked      : 27,\r
+               cite         : 28,\r
+               classid      : 29,\r
+               clear        : 30,\r
+               code         : 31,\r
+               codeBase     : 32,\r
+               codebase     : 32, //\r
+               codeType     : 33,\r
+               codetype     : 33, //\r
+               color        : 34,\r
+               cols         : 35,\r
+               colspan      : 36,\r
+               colSpan      : 36,\r
+               compact      : 37,\r
+               content      : 38,\r
+               coords       : 39,\r
+               data         : 40,\r
+               dateTime     : 41,\r
+               datetime     : 41, //\r
+               declare      : 42,\r
+               defer        : 43,\r
+               disabled     : 44,\r
+               enctype      : 45,\r
+               face         : 46,\r
+               htmlFor      : 47,\r
+               'for'        : 47, //\r
+               frame        : 48,\r
+               frameBorder  : 49,\r
+               frameborder  : 49, //\r
+               headers      : 50,\r
+               height       : 51,\r
+               href         : 52,\r
+               hreflang     : 53,\r
+               hspace       : 54,\r
+               httpEquiv    : 55,\r
+               'http-equiv' : 55, //\r
+               ismap        : 56,\r
+               isMap        : 56,\r
+               label        : 57,\r
+               language     : 58,\r
+               longDesc     : 59,\r
+               longdesc     : 59, //\r
+               marginheight : 60,\r
+               marginwidth  : 61,\r
+               maxLength    : 62,\r
+               maxlength    : 62, //\r
+               media        : 63,\r
+               method       : 64,\r
+               multiple     : 65,\r
+               noHref       : 66,\r
+               nohref       : 66,\r
+               noresize     : 67,\r
+               noshade      : 68,\r
+               nowrap       : 69,\r
+               object       : 71,\r
+               profile      : 72,\r
+               prompt       : 73,\r
+               readOnly     : 74,\r
+               readonly     : 74,\r
+               rel          : 75,\r
+               rev          : 76,\r
+               rows         : 77,\r
+               rowspan      : 78,\r
+               rowSpan      : 78,\r
+               rules        : 79,\r
+               scheme       : 80,\r
+               scope        : 81,\r
+               scrolling    : 82,\r
+               selected     : 83,\r
+               shape        : 84,\r
+               size         : 85,\r
+               span         : 86,\r
+               src          : 87,\r
+               standby      : 88,\r
+               start        : 89,\r
+               summary      : 90,\r
+               target       : 91,\r
+               text         : 92,\r
+               type         : 93,\r
+               useMap       : 94,\r
+               usemap       : 94,\r
+               valign       : 95,\r
+               value        : 96,\r
+               valueType    : 97,\r
+               valuetype    : 97,\r
+               version      : 98,\r
+               vlink        : 99,\r
+               vspace       : 100,\r
+               width        : 101,\r
+               wrap         : 102,\r
+               xmlns        : 103\r
+       },\r
+       noValue : {\r
+               checked  : 1,\r
+               compact  : 1,\r
+               declare  : 1,\r
+               defer    : 1,\r
+               disabled : 1,\r
+               ismap    : 1,\r
+               multiple : 1,\r
+               nohref   : 1,\r
+               noresize : 1,\r
+               noshade  : 1,\r
+               nowrap   : 1,\r
+               readonly : 1,\r
+               selected : 1\r
+       },\r
+       rename : {\r
+               'class'          : 'className',\r
+               accesskey        : 'accessKey',\r
+               'accept-charset' : 'acceptCharset',\r
+               bgcolor          : 'bgColor',\r
+               cellpadding      : 'cellPadding',\r
+               cellspacing      : 'cellSpacing',\r
+               'char'           : 'ch',\r
+               charoff          : 'chOff',\r
+               codebase         : 'codeBase',\r
+               codetype         : 'codeType',\r
+               colspan          : 'colSpan',\r
+               datetime         : 'dateTime',\r
+               'for'            : 'htmlFor',\r
+               frameborder      : 'frameBorder',\r
+               'http-equiv'     : 'httpEquiv',\r
+               ismap            : 'isMap',\r
+               longdesc         : 'longDesc',\r
+               maxlength        : 'maxLength',\r
+               nohref           : 'noHref',\r
+               readonly         : 'readOnly',\r
+               rowspan          : 'rowSpan',\r
+               tabindex         : 'tabIndex',\r
+               usemap           : 'useMap',\r
+               valuetype        : 'valueType'\r
+       }\r
+};\r
+\r
+(function(){\r
+       var toIndex = X.Dom.Attr.toIndex,\r
+               toName  = X.Dom.Attr.toName,\r
+               name, i;\r
+       for( name in toIndex ){\r
+               if( typeof ( i = toIndex[ name ] ) === 'number' ){\r
+                       toName[ i ] = name;\r
+               };\r
+       };\r
+})();
\ No newline at end of file
index 2920185..2827c0f 100644 (file)
@@ -4,8 +4,6 @@
  *
  */
 
-X.Dom = function(){ if( X.Dom._shortcut ) return X.Dom._shortcut.apply( this, arguments ); };
-
 (function(){
 
        var alphabets  = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',
@@ -43,7 +41,7 @@ X.Dom = function(){ if( X.Dom._shortcut ) return X.Dom._shortcut.apply( this, ar
         */
 
        // Attributes that have their values filled in disabled="disabled"
-       var fillAttrs = {checked:1,compact:1,declare:1,defer:1,disabled:1,ismap:1,multiple:1,nohref:1,noresize:1,noshade:1,nowrap:1,readonly:1,selected:1};
+       var fillAttrs = X.Dom.Attr.noValue; //{checked:1,compact:1,declare:1,defer:1,disabled:1,ismap:1,multiple:1,nohref:1,noresize:1,noshade:1,nowrap:1,readonly:1,selected:1};
 
        // Special Elements (can contain anything)
        var special = {script:1,style:1};
@@ -271,16 +269,37 @@ X.Dom._htmlStringToXNode = {
        },
        start : function( tagName, attrs, noChild, length ){
                var xnode,
-                       nest = this.nest,
-                       flat = this.flat,
-                       l    = nest.length;
+                       nest   = this.nest,
+                       flat   = this.flat,
+                       l      = nest.length,
+                       _attrs = {},
+                       attr, name, i, toIndex;
                if( l ){
                        xnode = nest[ l - 1 ].create( tagName );
                } else {
                        xnode = flat[ flat.length ] = X.Dom.Node.create( tagName );
                };
-               xnode.attr( attrs );
                if( !noChild ) nest[ l ] = xnode;
+               if( i = attrs.length ){
+                       toIndex = X.Dom.Attr.toIndex;
+                       for( ; i; ){
+                               attr = attrs[ --i ];
+                               if( attr ){
+                                       if( typeof attr === 'string' ){
+                                               name = attr;
+                                               //i    = toIndex[ name ];
+                                               //_attrs[ ( i || i === 0 ) ? i : name ] = name;
+                                               _attrs[ name ] = true;
+                                       } else {
+                                               name = attr.name;
+                                               //i    = toIndex[ name ];
+                                               //_attrs[ ( i || i === 0 ) ? i : name ] = attr.escaped;
+                                               _attrs[ name ] = attr.escaped;
+                                       };
+                               };
+                       };
+                       xnode._attrs = _attrs;
+               };
        },
        end : function(){
                0 < this.nest.length && ( --this.nest.length );
index 10445b6..8207eb2 100644 (file)
@@ -32,7 +32,7 @@ X.Dom.Node = function( v ){
                        case Node.IS_RAW_HTML :\r
                                if( xnode = Node._getXNode( v ) ) return xnode;\r
                                // dom2 || dom0\r
-                               this.parent    = v !== document.body && ( parent = v.parentNode || v.parentElement ) && Node._getXNode( parent );\r
+                               this.parent    = v !== document.body && ( parent = v.parentNode || v.parentElement ) && parent.tagName /* ie7- */ && Node._getXNode( parent );\r
                                this._rawNode  = v;\r
                                this._nodeType = 1;\r
                                v.setAttribute( 'UID', '' + uid );\r
@@ -194,7 +194,7 @@ Node.prototype._create =
                return node;\r
        }) :\r
        document.all ? (function( skipRemove, skipContainsDirty ){\r
-               var id, html, attrs, attr, children, i, l, child;\r
+               var id, html, attrs, attr, children, i, l, child, toName, noValue, name;\r
                if( this._nodeType !== 1 ) return this._text;\r
                \r
                if( this._rawNode || this._ie4getRawNode() ){\r
@@ -209,12 +209,27 @@ Node.prototype._create =
                        };\r
                };\r
                id   = this._id || ( 'ie4uid' + this._uid );\r
-               html = [ '<', this._tag, ' id=', id ];\r
+               html = [ '<', this._tag, ' id="', id, '"' ];\r
                if( attrs = this._attrs ){\r
-                       for ( i = 0, l = attrs.length; i < l; ++i ){\r
+                       toName  = X.Dom.Attr.toName;\r
+                       noValue = X.Dom.Attr.noValue;\r
+                       for( i in attrs ){ //\r
                                attr = attrs[ i ];\r
-                               //if( attr.name === 'id' ) continue;\r
-                               html[ html.length ] = ' ' + ( attr.name || attr ) + '="' + ( attr.escaped || attr ) + '"';\r
+                               if( attr === true ){\r
+                                       html[ html.length ] = ' ' + name;\r
+                               } else {\r
+                                       html[ html.length ] = ' ' + name + '="' + attr + '"';\r
+                               };\r
+                               /*\r
+                        = 0, l = attrs.length; i < l; ++i ){\r
+                               if( attr = attrs[ i ] || attr === 0 ){\r
+                                       name = toName[ i ];\r
+                                       if( noValue[ name ] ){\r
+                                               html[ html.length ] = ' ' + name;\r
+                                       } else {\r
+                                               html[ html.length ] = ' ' + name + '="' + attr + '"';\r
+                                       };\r
+                               };*/\r
                        };\r
                };\r
                html[ html.length ] = '>';\r
@@ -281,6 +296,7 @@ Node.prototype._afterCreate =
                };\r
                // イベントの復帰\r
                ( elm = this._ie4getRawNode() ) && X.Dom.Event.restore( elm );\r
+               elm.setAttribute( 'UID', '' + this._uid );\r
        }) :\r
        (function(){});\r
 \r
@@ -648,7 +664,7 @@ if( !document.getElementById && document.all ){
        Node.prototype._ie4getRawNode = function(){\r
                var elm, uid;\r
                if( elm = this._rawNode ) return elm;\r
-               if( ( uid = this._id ) && ( elm = this._rawNode = document.all[ uid ] ) ){\r
+               if( this._id && ( elm = this._rawNode = document.all[ this._id ] ) ){\r
                        return elm;\r
                };\r
                if( elm = this._rawNode = document.all[ 'ie4uid' + this._uid ] ){\r
@@ -859,23 +875,56 @@ Node.prototype.getOrder = function(){
 };\r
 \r
 /* --------------------------------------\r
- *  className, cssText, cssObject\r
+ *  className, addClass, removeClass, hasClass, cssText, css\r
  */\r
 \r
+Node.prototype.css = function( name /* , valuOrUnit */ ){\r
+       var args = arguments,\r
+               css  = this._css,\r
+               v, node;\r
+       if( 1 < args.length && 'px|em|cm|in|%'.indexOf( v = args[ 1 ] ) === -1 ){\r
+               if( node = this._ie4getRawNode ? this._ie4getRawNode() : this._rawNode ){\r
+                       node.style[ name ] = v;\r
+               };\r
+               if( !css ) css = this._css = {};\r
+               css[ name ] = v;\r
+               return this;\r
+       };\r
+       if( !css ) return;\r
+       return css[ name ];\r
+};\r
+\r
 \r
 /* --------------------------------------\r
  *  attribute\r
+ *  X.Dom.Attr.toIndex に定義されている 属性の場合\r
  */\r
 Node.prototype.attr = function( v ){\r
-       if( v.length && v[ v.length - 1 ] ) this._attrs = v;\r
+       var attrs, attr, l, i;\r
+       if( v.length && v[ v.length - 1 ] ){\r
+               //\r
+       } else\r
+       if( 2 < arguments.length ){\r
+               // setter\r
+       } else\r
+       if( typeof v === 'string' ){\r
+               // getter\r
+               if( attrs = this._attrs ){\r
+                       //i = X.Dom.Attr.toIndex[ v ];\r
+                       //if( i || i === 0 ){\r
+                       //      return attrs[ i ];\r
+                       //};\r
+                       return attrs[ v ];\r
+               };\r
+       };\r
 };\r
 \r
 /* --------------------------------------\r
  *  Width, Height\r
  */\r
 Node.prototype.width = function(){\r
-       var parent = this.parent, elm;\r
-       if( !parent ) return 0;\r
+       var elm;\r
+       if( !this.parent ) return 0;\r
        if( document.getElementById ){\r
                return ( elm = this._rawNode ) ? elm.offsetWidth : 0;\r
        } else\r
@@ -889,8 +938,8 @@ Node.prototype.width = function(){
 };\r
 \r
 Node.prototype.height = function(){\r
-       var parent = this.parent, elm;\r
-       if( !parent ) return 0;\r
+       var elm;\r
+       if( !this.parent ) return 0;\r
        if( document.getElementById ){\r
                return ( elm = this._rawNode ) ? elm.offsetHeight : 0;\r
        } else\r
@@ -964,12 +1013,12 @@ X.Dom.Event.add( window, 'load', function(){
                                                        alert( _xnode._tag + ' !== ' + child.tagName + ' * ' + child.outerHTML );\r
                                                } else {\r
                                                        _xnode._rawNode = child;\r
-                                                       !child.getAttribute( 'id' ) && child.setAttribute( 'id', ( _xnode._ie4uid = 'ie4uid' + _xnode._uid ) );\r
-                                                       child.setAttribute( 'UID', _xnode._uid );\r
+                                                       !( _xnode._id = child.getAttribute( 'id' ) ) && child.setAttribute( 'id', ( _xnode._ie4uid = 'ie4uid' + _xnode._uid ) );\r
+                                                       child.setAttribute( 'UID', '' + _xnode._uid );\r
                                                        child.children.length && createTree( _xnode, child.children );\r
                                                        f = true;\r
                                                        ++j;\r
-                                                       break;                  \r
+                                                       break;\r
                                                };\r
                                        } else\r
                                        if( _xnode._nodeType === 3 ){\r
@@ -988,11 +1037,16 @@ X.Dom.Event.add( window, 'load', function(){
                r._children.push.apply( r._children, X.Dom.parse( elm.innerHTML, true ) );\r
                createTree( r, elm.children );\r
                r._ie4reserveUpdate();\r
-               //alert(n +  ' ' + elm.innerHTML)\r
+               //alert(n +  ' ' + elm.innerHTML);\r
+               r._ie4startUpdate();\r
+               //alert(n +  ' ' + elm.innerHTML);\r
        } else {\r
                \r
        };\r
        \r
+       r.width  = new Function( 'return X.View.getSize()[ 0 ]' );\r
+       r.height = new Function( 'return X.View.getSize()[ 1 ]' );\r
+       \r
        return X.Callback.UN_LISTEN;\r
 } );\r
 \r
index 722575f..855583d 100644 (file)
@@ -124,7 +124,7 @@ X.View = (function( window, document ){
                                \r
                        },\r
                        _init : function(){\r
-                               var s;\r
+                               var s, size, b, x;\r
                                if( X.View.ready ) return X.Callback.UN_LISTEN;\r
                                if( s = X.View._script ){\r
                                        s.parentNode.removeChild( s );\r
@@ -134,37 +134,34 @@ X.View = (function( window, document ){
                                };\r
                                delete X.View._init;\r
                                X.View.ready = true;\r
-                               X.View.dispatch( { type : X.View.Event.SYS_READY } );\r
+                               \r
+                               if( X.UA.IE ) X.View._view = ( document.compatMode !== "CSS1Compat" ? ( b || document.body ) : document.documentElement );\r
+                               size = X.View.getSize();\r
+                               \r
+                               X.View.dispatch( { type : X.View.Event.SYS_READY, w : size[ 0 ], h : size[ 1 ] } );\r
+                               \r
+                               if( X.UA.IE && X.UA.IE < 9 ){\r
+                                       X.Timer.add( 100, resize );\r
+                                       if( 5 <= X.UA.IE ){\r
+                                               b = document.body;\r
+                                               b.appendChild( x = document.createElement( 'div' ) );\r
+                                               x.style.cssText = 'width:1px;height:1px;line-height:1px;filter:progid:DXImageTransform.Microsoft.Shadow()';\r
+                                               b.className += [ b.className === '' ? '' : ' ', 'ActiveX-', 1 < x.offsetHeight ? 'enabled' : 'disabled' ].join( '' );\r
+                                               b.removeChild( x );                             \r
+                                       };\r
+                               } else {\r
+                                       X.Dom.Event.add( window, 'resize', resize );\r
+                               };                              \r
+                               \r
                                return X.Callback.UN_LISTEN;\r
                        },\r
-                       Event : X.View.Event\r
+                       Event : X.View.Event,\r
+                       // _view : null, for ie\r
+                       getSize : X.UA.IE ?\r
+                               new Function( 'return [ X.View._view.clientWidth, X.View._view.clientHeight ]' ) :\r
+                               new Function( 'return [ window.innerWidth, window.innerHeight ]' )\r
                }\r
        );\r
-       \r
-       X.View.listenOnce( X.View.Event.SYS_READY, function(){\r
-               var b, x;\r
-               if( X.UA.IE && X.UA.IE < 9 ){\r
-                       X.Timer.add( 100, resize );\r
-                       b = document.body;\r
-                       b.appendChild( x = document.createElement( 'div' ) );\r
-                       x.style.cssText = 'width:1px;height:1px;line-height:1px;filter:progid:DXImageTransform.Microsoft.Shadow()';\r
-                       b.className += [ b.className === '' ? '' : ' ', 'ActiveX-', 1 < x.offsetHeight ? 'enabled' : 'disabled' ].join( '' );\r
-                       b.removeChild( x );\r
-               } else {\r
-                       X.Dom.Event.add( window, 'resize', resize );\r
-               };\r
-               \r
-               view = X.UA.IE ? ( document.compatMode !== "CSS1Compat" ? ( b || document.body ) : document.documentElement ) : window;\r
-               \r
-               X.View._view = view,\r
-               X.View.getSize = view.innerWidth ?\r
-                       ( function(){\r
-                               return [ view.innerWidth, view.innerHeight ];\r
-                       }) :\r
-                       ( function(){\r
-                               return [ view.clientWidth, view.clientHeight ];\r
-                       });\r
-       });\r
                \r
        return X.View;\r
 })( window, document );\r
index 85e6dc3..686828d 100644 (file)
@@ -166,7 +166,7 @@ var _DisplayNodeStyle = X.Class.create(
                                };
                                css[ p ] = v[ p ];
                        };
-                       this.cssText( X.Style.objToCssText( css ) );
+                       this.cssText( X.Dom.Style.objToCssText( css ) );
                },
                layout : function( x, y, w, h ){
                        var isFinite = X.Type.isFinite,