1

目标

显示加载的地图,.map_canvas而不是#map_canvas.

问题

未捕获的类型错误:无法设置未定义的属性“位置”

场景

当我在其中加载地图时#map_canvas一切顺利,但如果我将元素包装器更改为.map_canvas,我的应用程序就会失败。

我举了两个例子:

  1. 使用#map_canvas在 jsFiddle 上玩✓</li>
  2. 使用.map_canvas在 jsFiddle 上玩✗</li>

在这两种情况下,请注意JavaScript 代码的第 36 行。

提示:我已经尝试使用 jQuery 选择器而不是getElementsByClassName(),但问题仍然存在。

有人可以给我一个想法吗?

4

1 回答 1

5

那是因为getElementsByClassName返回一个数组,指定0索引:

var mapDiv = document.getElementsByClassName("map_canvas")[0];

演示类:http: //jsfiddle.net/tymeJV/fqCTV/1/

于 2013-08-30T13:07:24.350 回答