小编Pro*_*key的帖子

在循环中声明谷歌地图标记

我对谷歌地图标记上的事件监听器有一个奇怪的问题.基本上我想在循环中声明一堆标记,并让每个标记都有一个相关的infowindow.相关代码是:

var markers=[];
var contents = [];
var infowindows = [];


for (i = 0; i < 10; i++) { 

    markers[i] = new google.maps.Marker({
      position: new google.maps.LatLng(40+Math.random()*5, 4+Math.random()*5),
      map: map,
      title: 'samplemarker'
    });

    contents[i] = '<div class="popup_container">' +
    '</div>';


    infowindows[i] = new google.maps.InfoWindow({
    content: contents[i],
    maxWidth: 300
    });

    google.maps.event.addListener(markers[i], 'click', function() {
            infowindows[i].open(map,markers[i]);
            map.panTo(markers[i].getPosition());
    });  
}
Run Code Online (Sandbox Code Playgroud)

标记是正确创建的,也是infowindows,因为如果我手动执行infowindows[i].open(map,markers[i]);它们就会正确打开.然而,听众不起作用.

甚至更奇怪:我有另一个标记,在for循环之外声明的"marker_1",完全相同的方式.如果我写:

google.maps.event.addListener(marker_1, 'click', function() {
        infowindows[0].open(map,markers[0]);
        map.panTo(markers[0].getPosition());
});
Run Code Online (Sandbox Code Playgroud)

打开infowindow 0并在单击marker_1时将地图平移到标记0.然而,当写入时,在完全相同的位置,除了用marker [0]替换的marker_1之外的相同行,点击标记0完全没有效果.

感谢您的帮助,如果这是愚蠢的话,对不起!

javascript google-maps google-maps-api-3 google-maps-markers

5
推荐指数
1
解决办法
6485
查看次数

防止渐进式jpeg完全加载

所以,假设我有一个大版本的图像只能作为缩略图显示.是否可以通过使用渐进式jpeg避免为缩略图设置单独的文件,在达到一定数量的扫描时停止加载,并且仅在用户选择完全打开时继续加载?

如果是这样,如何控制图像的加载?

提前致谢.

jpeg progressive

5
推荐指数
1
解决办法
503
查看次数