Помогите с SimpleGeo Javascript SDK
Я новичок в Javascript и пытаюсь в конечном итоге сделать что-то, что позволит определить местоположение пользователей при использовании API getLocation с HTML5, и использовать simpleGeo для получения координат.
Пока что я пытаюсь заставить SimpleGeo работать, и у меня есть это:
var client = new simplegeo.ContextClient('YUpXKUcaTr2ZE5T5vkhaDRAXWbDbaZts');
function displayData(err, data) {
if (err) {
console.error(err);
} else {
console.log(JSON.stringify(data));
}
}
client.getLocation({enableHighAccuracy: true}, function(err, position) {
if (err) {
// Could not retrieve location information. Check err for more information
} else {
// Latitude and longitude available in position.coords
var lat = position.coords.latitude;
var lon = position.coords.longitude;
$('#header').html('<p>your latitude is: ' + lat + '. And your longitude is: ' + lon + '.</p>');
}
});
client.getNearbyAddress(37.765850, -122.437094), function(err, position) {
if (err) {
$('#header').html('<p>Sorry we couldn't locate an address.</p>)
} else {
$('#header').html('<p>Your Street number is ' + street_number + '</p>');
}
});
Однако это говорит о неожиданном идентификаторе в консоли JS в Chrome. Любая помощь будет оценена.:)
1 ответ
Я на самом деле разработчик Advocate @ SimpleGeo. Ваша функция displayData не выглядит так, как будто она ничего не делает. Также var street_number не определен. Вы ищете адрес пользователя?
Вот пример, который возвращает соседство пользователя:
<script type="text/javascript">
var client = new simplegeo.ContextClient('YOUR_JSONP_TOKEN');
$(document).ready(function() {
client.getLocation({enableHighAccuracy: true}, function(err, position) {
// get the user's context for the found location
client.getContext(position.coords.latitude, position.coords.longitude,
function(err, data) {
if (err)
(typeof console == "undefined") ? alert(err) : console.error(err);
else {
for (var i = 0, ii = data.features.length; i < ii ; i++) {
// switch on the category
switch(data.features[i]["classifiers"][0]["category"]) {
// Return the Neighborhood as an example
case "Neighborhood":
$("#neighborhood").val(data.features[i]["name"]);
break;
}
}
}
});
});
});
</script>