Labo

Progression4:useHTMLInjection

Progression4の機能で密かに注目しているHTMLタグの読み込み。

現在進めている仕事で、Movable Typeから吐き出したXMLをFlash側で読もうと思っていたのだが、HTMLタグから直接情報を読み込んだ方が、スマートだし、そのままHTMLソースもSEO対策に使えそうなので、早速使ってみるこにした。

Is It So Easy?さんの説明を参考に色々試していたのだが、HTMLを読み込む気配は全くない。

色々調べてみたところ、Progression4アップデートリリースノート
「WebConfig クラスのコンストラクタ第四引数 useHTMLInjection のデフォルト値を false に変更しました。」
と書いてある!

もしやと思い、「WebConfig.as」の「useHTMLInjection:Boolean = false」部分を「true」に変更したらうまく読み込めました。

プロジェクト単位にProgressionライブラリができるので、「WebConfig.as」を直接変更してもよいと思いますが、元を変えたく ない方は、index.asで、

var config:WebConfig = new WebConfig(null, true, true, true );

と「useHTMLInjection」プロパティにあたる「WebConfig」の第4引数を「true」に すれば、機能します。

Progression4はパブリックベータ版だが、まだ完全リリースではないので、こうした仕様の変更には気をつけ よう。。

□Progression 4.0.1 Public Beta 1.3 API Reference
http://asdoc.progression.jp/4.0/jp/progression/config/WebConfig.html


追 記(2010.2.18):
HTMLInjectionを使って、HTMLを読み込むには、読み込む部分のHTMLソース内 の<div>タグには全て「id」オプションが無いとエラーが出てしまいます。

これはどうやら<div id="/scene1">というように、divはシーン分けするためにHTMLInjectionでは使用されるようで、<div class="">だけではダメなのだと思います。

さらに例えば
<div id="/scene1">〜</div>
で挟まれている部分の要素にアクセスするには、scene1のシーンオブジェクトを 生成し、そのクラス内で初めて中のデータが取得できるっぽいので、初めからシーン分けをする目的でHTMLを組む以外の用途だと、かえって複雑になる気が します。

うーん、素直にMTからXMLを吐き出してそれを読むことにしよう。

10.02.16.PM08:43

Track Back

http://plamo-tokyo.com/site/mt-tb.cgi/82