ブラウザ上で Python を試せる「IPYWEB」を作ってみた

Silverlight2 の IronRuby を使って ブラウザ上で Ruby を試せる「IRBWEB」を作ってみた ので、その延長でブラウザ上で Python を試せる IPYWEB を作ってみた。


IPYWEB

Silverlight のソースは Silverlight Dynamic Languages SDK 0.5.0 の Repl サンプルそのまま。修正したのは HTML・JavaScript・CSS だけ。IronPython さまさま。

Firefox の謎

現在の *.xap は、Iron*** を含んでいて 1MB 近くあるので、ローディング中は Silverlight を表示したい。ただ、ロードが完了すれば Silverlight の表示は不要になるので、*.xap の初期化が完了した段階で JS を使って *.xap を隠している。

けれども、これをやると IE では動くのに、何故か Firefox で *.xap が再度実行されてしまう。対処方法は全く不明で、JS 経由であれやこれやするのがいけないのかもしれない。全く意味が分からん。

手がかりは昨日のエントリで id:matarilloid:matarillo さんがコメントしてくれた

bodyのスタイルを後からoverflow:hiddenにするとapp.rbが再度動いてしまいREPLのdivがさらに追加されるのでJSでセットしない

はてなブックマーク - matarilloのブックマーク - 2009年4月6日

というコメントのみ。んー、これってどこかに情報があるんでしょうか。。。対処法はないんだろうか。。。