iPhoneのSafariのエミュレータ

iPhone向けサイトの開発を行っているならエミュレータはあった方が良いと思う。最終的な確認はiPhone実機でやるとして、開発中の細かな確認はいちいちiPhoneでやるとめんどいなー、みたいな。Mac持っているならApple謹製のエミュレータがあるらしいけど、あいにく仕事はWindowsなんすよね...。
ってことで、エミュレータを2個試してみたので書いておく。2つともAdobeAirが必要。あとSafariも?

Air iPhone

Joe Johnston – Medium
お!いいかも!と一瞬思ったけど、user-agentちゃんと設定してくれてないみたい。user-agentで端末の判定やっている場合は、ちゃんとレンダリングされないっぽい。

iBBDemo3

Google Code Archive - Long-term storage for Google Code Project Hosting.
iBBDemo3
これいいね。大きくて見やすい。ちゃんとUA偽装もやってくれてるっぽい。
ググってたらリンク切れで公開終了したのかなーと思ってたけど、見つけた!よかったー。

window.orientationがundefined???
<head>
  <link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.css" />
  <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
  <script type="text/javascript" src="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.js"></script>
  <script>
    jQuery.event.add(window, "orientationchange", function(){ alert(window.orientation); });
  </script>
</head>

ってやると、orientationchangeのタイミングでalertが実行されるけど、window.orientationがundefinedって言い張るのよね...。orientationchangeちゃんと動くのにorientationの値がundefinedとか、そんな実装あり?alertの部分は

alert(window.orientationchange);

にしてもやっぱりundefinedだった。もはや意味不明。orientationchangedが存在してるから、alert実行されとるんじゃないの?
iPhone実機で試すしかないのかなぁ。となるとlocalhostに無線でつなげられるようにしないとダメだな。無線LAN整備してないんだよなぁ。ちなみに
[iPhone] iPhone Safariでデバイスの向き(orientation)を取得してみた - YoheiM .NET
のサンプルをiPhone4のSafariで見た時はちゃんと動いたけど、iBBDemo3で見るとやっぱりダメみたい。