小编hhj*_*hhj的帖子

关闭google maps api v3中的所有打开的信息窗口

正如标题所述,在一个特定的事件上(对我而言,这恰好是在打开一个新的时候google.maps.InfoWindow我希望能够关闭任何其他当前打开的信息窗口.现在,我可以一次打开很多..但我只想要一次打开1次.

我正在动态创建信息窗口(即我不知道会生成多少个),所以在当前信息窗口的click事件中(我希望所有其他打开的窗口关闭)我不知道t引用任何其他要打开的信息窗口close().我想知道如何实现这一目标.我不是一个经验丰富的JavaScript程序员,所以我不知道我是否需要在这里使用反射或类似的东西.

最好的方法是将所有引用保存在某种集合中,然后遍历列表将它们全部关闭?

谢谢.

javascript google-maps google-maps-api-3

28
推荐指数
2
解决办法
3万
查看次数

javascript内存泄漏

我有一些javascript(与谷歌地图api一起使用)我正在IE和Chrome上测试,并且只注意到IE中的内存泄漏症状:当我连续刷新页面时,IE中使用的内存量不断增长(快速),但是在Chrome中它保持不变.如果没有发布所有代码(因为它很长),我可以得到一些关于要注意什么的建议吗?什么可能导致内存在页面刷新的IE中继续增长?

就像我说的,我知道它没有代码很难,但我想看看是否有任何通用建议是先工作的.谢谢.

更新:感谢目前为止的回复.作为一个全面的检查,我跑了谷歌地图API的"Hello World"的代码从谷歌看到在IE中会发生什么(代码如下所示).在IE中运行此代码时,当我不断刷新页面时,内存会不断增长和增长.这是内存泄漏吗?这看起来不像预期的功能......

<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
  function initialize() {
    var latlng = new google.maps.LatLng(-34.397, 150.644);
    var myOptions = {
      zoom: 8,
      center: latlng,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
  }

</script>
</head>
<body onload="initialize()">
  <div id="map_canvas" style="width:100%; height:100%"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

更新2:那么有没有办法让这个谷歌Hello World地图api代码在IE中没有泄漏内存的情况下运行?我注意到,如果我在maps.google.com上运行相同的实验,那么似乎没有泄漏......如果有人可以帮我修改hello world代码以便它不会在IE中泄漏,那将会很棒.这样我可以构建它(我不介意使用JQuery,如果这会有所帮助,但我在Hello World代码上尝试了它,它仍然在IE中泄漏).再次感谢

javascript internet-explorer memory-leaks

6
推荐指数
1
解决办法
4542
查看次数

最大化浮动div?

假设我有2个div并排:1个向左浮动,另一个向右浮动.现在说我将左浮动div的大小修改为200px.如何强制右浮动div"自动"最大化或占用水平屏幕空间的其余部分(无论浏览器窗口的大小如何?

html css

2
推荐指数
1
解决办法
3285
查看次数

Javascript - 排序包含正和负"十进制"数字的数组

我最初将以下回调作为参数传递给javascript数组sort()函数:

function sortNumber(a,b) {
return a-b;
}
Run Code Online (Sandbox Code Playgroud)

但是,当我的数组包含正数和负数十进制数(即-107.578,97.453等)时,这不起作用.如何修改它以正确排序?

javascript arrays sorting

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

为什么这个html/css不工作呢?

我只是想在页面上居中一个div.它适用于chrome,但是div仍然在左边:

<html>
<head></head>
<body>
  <div id="container" style="margin:0 auto; width:200px;">
       test
  </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我读过的所有内容都说要将块元素居中,只需添加margin:0 auto并指定宽度,所以我不知道为什么这不起作用.

我正在测试IE 7.0.5730

html css internet-explorer

0
推荐指数
1
解决办法
100
查看次数