2016-04-27 7 views
2

arectdeclinを使用して、aladinインスタンス内でtargetプロパティを定義する方法を理解しようとしています。 targetプロパティには、 "、"で区切られた2つの数値が必要です。2つの数値変数を持つインスタンスプロパティを設定する方法

ターゲットが2つの変数に格納されている座標を確実に読み取るにはどうすればよいですか。

ajax要求は10秒ごとに行われ、毎回異なる変数を格納します。

var arect = {}; 
var declin = {}; 
$.ajax({ 
    url: "getstatus2.php", 
    async: false, 
    dataType: 'json', 
    success: function(data) { 
     arect = data.ar; 
     declin = data.dec; 
     console.log(arect); 
     console.log(declin); 
    } 
}); 

var aladin = A.aladin('#aladin-lite-div1', { 
    survey: "P/allWISE/color", 
    fov:1, 
    cooFrame:"ICRS", 
    showReticle:"true", 
    showFrame:"true", 
    showLayersControl:"false", 
    showZoomControl:"true", 
    target:'arect,declin', 
}); 
+0

質問はありませんでしたが、リクエストが10秒以上かかるとどうなりますか?たぶん、論理時計を追加する必要があります。 – m02ph3u5

答えて

1

あなたのようなあなたの目標を設定できます。

target: arect + ',' + declin 

しかし、あなたはあなたのAJAX呼び出しの結果として、これを設定する必要があります。 var aladin = A.aladin ...で始まるブロック全体をsuccessブロックに移動するか、または、aladin変数を設定する関数を作成します。例えば

function SetAladin(arect, declin) { 
var aladin = A.aladin('#aladin-lite-div1', { 
    survey: "P/allWISE/color", 
    fov:1, 
    cooFrame:"ICRS", 
    showReticle:"true", 
    showFrame:"true", 
    showLayersControl:"false", 
    showZoomControl:"true", 
    target: arect + ',' + declin, 
    }); 
} 

してからsuccessブロックでは、単に関数を呼び出します。

SetAladin(data.ar, data.dec); 
+0

これは完璧です!それは働くおかげで! – hologhost

関連する問題