Google maps api 3 谷歌天气图书馆

Google maps api 3 谷歌天气图书馆,google-maps-api-3,weather,Google Maps Api 3,Weather,我用谷歌图书馆时间在地图上显示它 我的问题是,第一个显示的窗口非常小,你必须滚动。 如何控制此窗口的大小 其次,我只想显示我给出的坐标的地图,并显示我想要的最少时间。我该怎么做 这是我的代码: 函数generartiempo(36.745,-3.87665,'mapatiempo'){ 变量映射选项={ 缩放:11, 中心:新google.maps.LatLng(lat,lng,true), mapTypeId:google.maps.mapTypeId.ROADMAP }; var infow

我用谷歌图书馆时间在地图上显示它

我的问题是,第一个显示的窗口非常小,你必须滚动。 如何控制此窗口的大小

其次,我只想显示我给出的坐标的地图,并显示我想要的最少时间。我该怎么做

这是我的代码:

函数generartiempo(36.745,-3.87665,'mapatiempo'){
变量映射选项={
缩放:11,
中心:新google.maps.LatLng(lat,lng,true),
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var infowindow=new google.maps.infowindow();
var map=new google.maps.map(document.getElementById('mapatiempo'),
地图选项);
var weatherLayer=new google.maps.weather.weatherLayer({
温度单位:google.maps.weather.TemperatureUnit.CELSIUS,
windSpeedUnit:google.maps.weather.windSpeedUnit.km/h
});
weatherLayer.setMap(weatherLayer.getMap()?null:map);
var cloudLayer=new google.maps.weather.cloudLayer();
cloudLayer.setMap(map);
}
#马帕蒂恩波{
宽度:268px;
高度:200px;
边框:1px实心#AAAAA 8;
边缘底部:5px;
边缘顶部:15px;
}
有人能帮忙吗? 编辑示例: 解决方案
谢谢

没有定义默认信息窗口大小的选项。此外,信息窗口的大小受地图大小的限制,它不能再大,因此需要放大地图

您可以做的是:使用自定义信息窗口覆盖默认信息窗口,并自行定义内容,使其适合较小的信息窗口


自定义信息窗口的示例代码:(假设一个变量包含
google.maps.Map

//创建weatherLayer
var weatherLayer=new google.maps.weather.weatherLayer({
温度单位:google.maps.weather.TemperatureUnit.FAHRENHEIT,
可点击:正确,
suppressInfoWindows:true
});
//创建InfoWondow实例
var weatherWindow=new google.maps.InfoWindow();
//观察点击事件
google.maps.event.addListener(weatherLayer,'click',函数(e){
//隐藏信息窗口
天气窗。关闭();
var content=document.createElement('ul'),
天气=e.featureDetails.forecast,
单位=“°”+e.featureDetails.temperatureUnit.toUpperCase();
//合并当前天气和预测
天气。推送(如功能详情。当前);
//创建一些内容(这里是一个简短的摘要)

对于(var i=0;i)您所说的“使用谷歌图书馆时间在地图上显示它”的确切含义是什么,你指的是天气预报吗?你是在问如何更改显示的地图的大小吗?如果我使用此文档WeatherLayerNo,请更改信息的窗口大小,而不是地图。当你单击你的eg时,你打开一个窗口并希望滚动更新Hepl me?谢谢,我非常担心你。你知道我如何ld获取图像例如:太阳和覆盖默认窗口信息地图上的太阳/云/任何东西都不是图像,它们是平铺的一部分,因此您无法将它们作为单个图像获取(但您可以单击它们,API将在单击时响应)。若要获取自定义信息窗口,请将weatherlayer的
suppressInfoWindows
-选项设置为
true
,并观察weatherlayer的单击事件。当发生单击时,传递给单击回调的参数包含该位置的天气特征,您可以使用它们为信息窗口创建在insi中定义的内容删除文档。再次感谢你,我真的不知道如何得到马赛克的那部分。如果不太需要的话,你能给我举个例子吗。谢谢!!!哦,我的上帝,我爱你。非常感谢。我欠你一个拥抱。
         function generartiempo(36.745,-3.87665,'mapatiempo') {
            var mapOptions = {
          zoom: 11,
          center: new google.maps.LatLng(lat,lng,true),
          mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        var infowindow = new google.maps.InfoWindow();
        var map = new google.maps.Map(document.getElementById('mapatiempo'),
            mapOptions);

        var weatherLayer = new google.maps.weather.WeatherLayer({
          temperatureUnits: google.maps.weather.TemperatureUnit.CELSIUS,
          windSpeedUnit: google.maps.weather.WindSpeedUnit.KILOMETERS_PER_HOUR
        });


        weatherLayer.setMap(weatherLayer.getMap() ? null : map);

        var cloudLayer = new google.maps.weather.CloudLayer();
        cloudLayer.setMap(map);

    }
<div id="mapatiempo"></div>
#mapatiempo {
width: 268px;
height: 200px;
border: 1px solid #AAAAA8;
margin-bottom: 5px;
margin-top: 15px;
}
    //create the weatherLayer
    var weatherLayer = new google.maps.weather.WeatherLayer({
      temperatureUnits: google.maps.weather.TemperatureUnit.FAHRENHEIT,
      clickable:true,
      suppressInfoWindows:true
    });

    //create InfoWondow-instance
    var weatherWindow=new google.maps.InfoWindow();

    //observe click-event
    google.maps.event.addListener(weatherLayer,'click',function(e){

      //hide infoindow
      weatherWindow.close();

      var content  = document.createElement('ul'),
          weather  = e.featureDetails.forecast,
          unit     = '°'+e.featureDetails.temperatureUnit.toUpperCase();

        //merge current weather and forecast
        weather.push(e.featureDetails.current);

        //create some content(here a short summary)
        for(var i = 0; i<weather.length; ++i){
          var item = content.appendChild(document.createElement('li'))
                      .appendChild(document.createTextNode(''))
              w    = weather[i];
              item.data='['+w.shortDay+']'+w.description+
                        '('+w.low+unit+'/'+w.high+unit+')';


        }
        //set content and position of the infoWindow
        weatherWindow.setOptions({position:e.latLng,content:content});
        //...and open the infowindow
         weatherWindow.open(map);
    });
    weatherLayer.setMap(map);