2009/6/22 月曜日

jQueryを利用してwebページ要素内の座標を得る方法

Filed under: プログラミング — コザック @ 15:03:27

モバイル以外のプログラミングについて書くのは初めてかも。

簡単だと思って始めたらハマってしまうのはプログラミングには、よく有ることですがwebプログラミングでは、その可能性が高くなります。ドキュメントで良く分からない場合は、Google先生に頼れば実例が見つかるものですがwebプログラミングの場合、その検索結果を見ても混沌とした状況に陥る場合があります。今回は、その一例です。備忘録として書き残しておきます。

webページの中にイメージ等を表示して、その中をクリックしたりマウスを動かしたりしたときに、そのマウスの位置をイメージ内部の相対的な座標として得る方法です。マウスをクリックしたり動かした時のイベントをjavascriptで得る場合IEを除いては要素内では無く、ウインドウなどを基準とした座標が返って来ます。ただしwebブラウザーによって扱いが様々なのが現状です。

では、イメージなどの要素の位置が得られれば、イベントで得られたマウスの位置との差分を取れば目的は達成できる訳ですが、要素=オブジェクトが複雑にweb画面上に構成されていると生のjavascriptだとかなり面倒なコーディングが必要となります。

こういった事をなるべく簡単に処理するために幾つかのjavascriptライブラリが公開されています。その一つであるjQueryを使用したところ、かなり簡単に処理することができました。

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('img#test').click(function(e){
var x = e.pageX - $('img#test').position().left;
var y = e.pageY - $('img#test').position().top;
alert("X=" + x + " Y=" + y);
});
});
</script>

上のようなコードがヘッダー部分にあったとして<img id="test"で始まるイメージの内部をクリックするとイメージ内部の相対的な座標が表示されます。

2009/6/18 木曜日

中国版Google Mapsアプリ「谷歌地图」の地図が綺麗になった

Filed under: NOKIA, GPS — コザック @ 13:40:21

Google Mpas China VersionNokia S60デバイス向けのGoogle Mapsアプリに中国版があるのは何度も紹介してきました。機能的には、国際版(アメリカ版?)を何時も後追いで追従している感じです。後は、その時々によって違うのですが地図そのものも取ってきている所が違っているようです。初期の頃は中国版だと中国簡体字表記、国際版だと英字表記の地図で何となく棲み分けが出来ていました。

しばらくの間、地図も検索機能も国際版と中国版で変わるところがありませんでした。そのため、機能の豊富な国際版のみを使用していました。

E90のファームウェアを更新後、久しぶりに中国版を入れてみると(本当は間違って導入したのですが :P )、地図データが変わっていました。文字が読みやすいし情報も豊富です。これで国際版にあるLatitude機能があれば中国版を常用するのになぁ。残念。

実は、この地図データはPC版のGoogled地图では少し前から表示されていたものです。通常のGoogle Mapsと比べると違いは歴然です。

2009/6/13 土曜日

上海のスタバの無料無線LAN (完結編か ?)

Filed under: 普通の生活 — コザック @ 23:19:10

CMCC-Starbucks 1CMCC-Starbucks 2

その後もスタバに行くたびに無線LANのSSIDを調べています。どうもChinaNetとCMCC-Starbucksという組み合わせが多いようです。で、今日再びCMCC-Starbucksに接続すると以前とは違うログイン画面が表示されました。以前は、中国移動の有料無線LANサービスに接続されていましたが今はスタバ専用の画面になっています。

[ ログイン方法 ]

中国の携帯電話番号がありSMSさえ受けられればキャリアは問わないようです。
上の左側キャプチャー画像(説明を入れるため上が切れてしまいましたが)の上の方に電話番号を入れます。それとCAPTCHA(验证码)を入力し申請ボタンを押すとSMSにてユーザーID(账号)とパスワード(密码)が送られてきます。それを第二の画面に入力するとログイン出来ます。

[ 有効期間 ]

画面の中に使用方法についてのDOCファイルが貼り付いています。それによるとユーザーIDの有効期間は4時間、一つの携帯電話番号で一日に5回までユーザーIDの取得が可能とのことです。またP2Pや大量のダウンロードはご遠慮くださいとも書かれています。

ただし速度は期待できません。本日試したところでは、ほとんどEDGEで接続しているかのような感じでした。添付ファイルの無いメールやチャットくらいなら問題はないですが、ちょっと重いサイトなどを閲覧するのはつらいかも知れません。

2009/6/10 水曜日

NOKIA N97 を触ってきました

Filed under: NOKIA — コザック @ 19:13:42

NOKIA N97
(隠し撮りなので画質の悪さは勘弁願います)

上海の南京東路にあるノキア旗艦店にてN97をいじってきました。発売を前に実機を触れるのは旗艦店ならではのことでしょう。1階と2階に展示があります。2階の方が人が少なくてゆっくり触れます。

短い時間のことなので十分なレビューは出来ません、第一印象てきなことを書き連ねてみます。

  • 質感も高く、キーボードの開閉機構にも不安を感じる部分がありません。ノキアの良さが出ています。
  • キーボードはスムースに開くことが出来ます(片手でも開くのは大丈夫だったと思う)。X01HT以来、スライド式のキーボードは苦手だっのたですが、これなら大丈夫かも。
  • キートップはかなり小さいのですが、押し込んだ感覚がはっきりしていて良い感じです。十分に使えるキーボードです。
  • 香港版などはキートップ(リンク先は「アジアの片隅から」)の刻印がごちゃごちゃしているとのことですが、展示機は英数字だけのシンプルなものでした。ブローシャーやwebの写真を見ると「中」の文字があるので市販品はすこしだけ違うかも。それでも香港版よりはマシです。香港版との違いは繁体字です。シンガポール版もキーボードは大陸版と同じかもしれません。
  • 5800XMと違ってホームキーが斜めになって端っこに付いています。これが、また絶妙でqwertyキーボードを操作している時にも自然な動作で押すことが出来ます。
  • これは主観ですが、5800XM(初期ファームしか試していません)よりタッチの反応が良いように思えます。中国語手書きも指先で何とか出来そうでした(簡体字しかないし、当然カナは認識されませんでした)。
  • ホーム画面はウィジェット(かな?)が動いていました。慣れてないので、これについては良く分からず。

といった感じです。で、帰り道にtweetしていたらWiFiは有ったとか3Gは有ったとか聞かれてしまいました。触れたことだけで満足してしまいWiFiと3Gがあるかどうか調べてくるのを忘れていました。一応、一番詳しいweb上のスペックシートを見る限りGSMとBluetoothしか無いように見えます。

興味津々なのは分かった。で、おまえは買うのかと言われると、さすがにお高いので躊躇します。もともとN97は、さほど欲しいとは思っていませんでした。Nシリーズだし、qwertyだけどキーの数が少ないし、スライドだし、、、でも実機を見ると良さが分かってしまい、悩み中です。ま、買うとしても先の事になるでしょう。

今回はパス宣言をしている上海の若大将、実機を見ておいた方が良いかもよ!

2009/6/7 日曜日

Safariのユーザー・エージェント変更は簡単だった

Filed under: Mac — コザック @ 18:48:11

Safari UserAgent Change Menu

以前、NOKIA S60向けの中国語FEPを紹介した時にMacからだとダウンロード・ページに行けないと書きました。その理由は該当サイトが接続して来たのがWindowsか携帯電話を判別して携帯電話の場合WAPのページに飛んでいたからです。どうもWindows以外であるMacは携帯電話と判断されてしまっていたようです。

ブラウザーが返すUA(ユーザー・エージェント)という情報を変更すれば良いとは分かっていても面倒だなと思っていました。ところが、SafariでのUA変更は、とても簡単なことでした。ほとんど悩むことなく、くだんの中国語FEPをMacからダウンロード出来ました。

Safariの環境設定から詳細を開くと「メニューバーに”開発”メニューを表示」とあるので、それにチェックを入れます。あとは上のキャプチャー画像の通りです。予め代表的なUAがプリセットされているところが、とっても便利です。iPhoneのSafariとか選んでiPhone対応サイトを訪れるのも面白いです。

注) UAを変更してもブラウザーの挙動までは変更されませんので、場合によっては画面の表示や動きがおかしくなるかもしれません。あくまで開発用途なのでご承知おきくださいませ。

2009/5/27 水曜日

GPS要らずのGoogle Maps

Filed under: NOKIA, GPS — コザック @ 18:19:21

Google Maps My Location w/o GPS

現在、メインの携帯電話として使用しているNokia E63には内蔵GPSがありません。出かけるときはBluetoothで接続するGPSユニットを持っていったりしますが、Google MapsをE63で立ち上げたときに同時にGPSユニットの電源も入れなければならないので一手間かかります。ということもありGPS無しでGoogle Mapsを使用することもしばしばです。

それで気づいたのですがGPS無しのMy Location機能の精度が随分と向上しています。ほとんどの場合、上海市内では100mか200mの円が描かれます。ちょっと前までは1500mとか1700mの円が出ていました。GPS無しの場合、携帯電話の基地局の情報によって位置を決定しているということでしたので、基地局のカバーする範囲から妥当な精度だと思っていました。ところが最近のGoogle Mapsのバージョン(おそらく3.0)からGPSなしでも高い精度のロケーションが可能になったようです。

複数の基地局情報からtriangulationを行っているのか他に情報源があるのかは分かりませんが便利になったこと、この上なしです。以前は、近くの地図を表示するための機能であったGPSなしのMy Locationが、今やほとんど正しい位置を表示しているといっても過言ではありません。ここまでくると、どのブロックにいるかまで分かるので大きな通りならば、どちらの方向にあるかは判別できます。

GPSを使用したときの利点は、細かい建物単位までナビゲーション出来るとか、進行方向が矢印で表示されるくらいかもしれません。普段はGPS無しで十分役に立つGoogle Maps、かなりスゴイことですね。

と、いったことをtweetしていたら、東京はもっと精度が高いとの情報を得ました。さすが日本と感心していたら、N県とかS県では100Km以上の円が描かれるそうです。ということで、この話は都会限定かもしれません。 :P

2009/5/21 木曜日

上海のスタバで中国移動の無線LANを利用する

Filed under: 普通の生活 — コザック @ 18:50:33

最近の記事で上海のスターバックスにもやっと無料の無線LANが入ったと書きました。その後、何店舗かのスタバを利用しましたが無料の無線LANは見つかりません。どうやら、かなり限定的、あるいはテスト的な運用のようです。

その時のもう一つの発見はCMCC-StarbucksというSSIDの存在でした。以前から上海のスタバ にはChinaNetという無線LANが飛んでいました。これは中国電信のサービスで、予め申し込みが必要です。そのため面倒で試すことさえありませんでした。CMCCは中国移動のサービスで中国移動の携帯電話番号さえ持っていれば、その場でパスワードを取得して使用することが出来ます。

[ 使用方法 ]
CMCCあるいはスタバならばCMCC-StarbucksというSSIDに接続してWebブラウザーを開くと詳しい説明が表示されます。簡単に手順を書 いておくと中国移動の番号の入った携帯電話からSQWLANという文字列をSMSで10086に送ると折り返しパスワードが送られてきます(プリペイドの神州行でも大丈夫でした)。後は携帯電話の電話番号とこのパスワードでログインするだけです。料金は0.05元/分で携帯電話料金として課金されます。以前、よく使っていた頃よりかなりお得に なっています。 一時間接続しても3元なので、ほとんど気にならない値段です。先のページにも記載されていますがSMSで定額メニューに申し込むことも出来ます。最低が月 30元で15時間の利用ですから、毎月コンスタントに10時間以上使用する場合は定額メニューを申し込んだ方が良いでしょう。

CMCC-Starbucks

親切なのは、キャプチャーにもあるように現在の接続時間に加えて定額メニューの残り時間が表示されるようになっているところです。このあたり中国移動のサービスは割としっかりしている印象があります。

使用が終わったら下线というボタンを押して切断します。

スピードは、今回試した限りではあまり速くはありませんでした。極端に言えばEDGEで接続するよりはマシといった程度です。以前、よく使っていたころは、かなり速度的には満足していたので、また別の機会に試してみたいと思います。

[ 日本のサービスのローミングもある ]
CMCC Roaming Option
ログイン画面の下の方を見るとRoaming Visitor Loginという文字が見えます。プロバイダーのリストを見るとお馴染みのiPassや各国のサービスに加えてNTT ComunicationsやNTT DoCoMoの文字が見えます。私はいずれのサービスも日本で使用していないので詳細は分かりませんが簡単に使用できそうですね。

次のページ »

HTML convert time: 0.843 sec. Powered by WordPress ME