JavaScriptでiPhoneの位置(向き)が変わった時の通知してくれるイベントハンドラーを発見したので、サンプルを作りました。
<html> <head> <title>Sample Code</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="apple-mobile-web-app-status-bar-style" content="black" /> <meta name="viewport" content="width=device-width, user-scalable=no" /> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"> </script> <script type="text/javascript"> function OrientationChangeFunction(){ var displayStr = "Orientation : " + window.orientation; $("#hoge").text(displayStr); } </script> </head> <body onorientationchange="OrientationChangeFunction()" > <div id="hoge"></div> </body> </html> |
User Experience Coding How-To's for Safari on iPhoneのHow do I detect iPhone orientation changes in my web application?
と
Handling EventsのHandling Orientation Events
を参考にしました。
若干の懸念事項として、webページを開いたときに、現状のiPhoneの向きがどうなっているのかが上のソースからでは判断できないんじゃーないかということ。
ちなみに、取得できる角度は、0、90、-90、180で、
右に傾けた場合は、-90
左に傾けた場合は、90
となります。
単位は、ラジアンではなく度です。
Tweet
0 コメント:
コメントを投稿