2012/06/27

javascriptの処理の順番

javascriptの勉強している中で、geolocationで自分の位置を調べて座標を表示するサンプルに、
google mapを表示する機能を追加しようとしたのですが、javascriptの処理の順番を
気にせず機能を挿入したため、表示されないという事が起きました。
geolocationのサンプルは下のようなつくりになっていました。
function a(){
  navigator.geolocation.getCurrentPosition(callback)
 ..snip..
}
function callback(position){
  座標表示処理
..snip..
}

そこで、function a()の getCurrentPosition 以降にgoogle mapを表示する処理を追加しました。
そこで実行してみると、地図が表示されない。。。
座標が取得されない?と思い、function callback()内に座標を表示するようにしてみたところ、取得されているようでした。
んんん?と思い、google map処理部分をfunction callback()に移動したところ、問題なく表示されました。
私はてっきり、geolocationの関数を処理した後、google map部分を処理してくれると思っていたのですが。。。
というわけでjavascriptについて、まだまだ分かっていないことを痛切に感じました。。。orz

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。