|
- function initWeather() {
- //定位
- var map = api.require('bMap');
- map.getLocation({
- accuracy : '10m',
- autoStop : true,
- filter : 1
- }, function(ret, err) {
- if (ret.status) {
- getCityName(ret.lon, ret.lat)
- } else {
- //alert(err.code);
- }
- });
- //
- }
- function getCityName(lon, lat) {
- var url = 'http://api.map**.**/geocoder/v2/?ak=bTRhV7TqZhXlsGyDdbrhpfsQ&output=json&pois=1&location=' + lat + ',' + lon;
- api.ajax({
- url : url,
- meghod : 'get',
- timeout : 30,
- dataTyep : 'json'
- }, function(ret, err) {
- try{
- $('.city').html(ret.result.addressComponent.city);
- getWeather(ret.result.addressComponent.city);
- }
- catch(e)
- {
- // 如果网络出现问题。。我们也不用提示
- }
- });
- }
- function getWeather(cityName) {
- var url = 'http://api.map**.**/telematics/v3/weather?location=' + cityName + '&output=json&ak=bTRhV7TqZhXlsGyDdbrhpfsQ';
- api.ajax({
- url : url,
- meghod : 'get',
- timeout : 30,
- dataTyep : 'json',
- returnAll : false,
- data : {
- }
- }, function(ret, err) {
- if (ret) {
- var urlJson = JSON.stringify(ret);
- var todayWeather = ret.results[0].weather_data[0];
- $('#temperature').html(todayWeather.temperature);
- $('#wind').html(todayWeather.wind);
- $('#weatherDesc').html(todayWeather.weather);
- $('#dayPictureUrl').attr('src', todayWeather.dayPictureUrl);
- } else {
-
- }
- });
- }
复制代码 总共分为3步,1 获取经纬度, 2 获取城市名字, 3 获取天气
ak是有效的,大家可以直接写死一个城市名字测试。
|
|