【发布时间】:2014-06-14 15:39:57
【问题描述】:
我搜索了很多关于为 Google Maps Api v3 创建自定义控件的信息,我发现其他人将它用作 Google documentation。 他们使用 JS 创建 div 和样式,我认为这不是一个好习惯。 我认为这违反了我的意思是在 JS 或 HTML 中编写 CSS 代码的关注点分离设计原则。
除了最佳实践问题,我已经尝试了上面链接中的代码示例,但它不起作用,它引发了以下错误:
( **Uncaught TypeError: Cannot read property 'zIndex' of undefined** ) ..
这是放置 [Zoom] 按钮的代码。
HTML 文件
<div id="control-div" class="control-div">
<div id= "control-ui" class="control-ui" title = "Click to set the map to Home">
<div id="control-text" class="control-text">
<p> Zoom </p>
</div>
</div>
</div>
CSS 文件
.control-ui{
background-color: white;
border-style: solid;
border-width: 2px;
cursor: pointer;
text-align: center;
width: 90px;
height: 30px;
}
.control-text{
front-family: Arial,sans-serif;
font-size: 12px;
padding: 4px 4px;
}
JS 文件(Google 地图初始化程序)
var controlDiv =$("#control-div");
var controlUI = $("#control-ui");
var controlText = $("#control-text");
controlUI.click(function() {
map.setZoom(11);
});
controlDiv.index = 1;
map.controls[google.maps.ControlPosition.TOP_RIGHT].push(controlDiv);
【问题讨论】:
标签: javascript google-maps google-maps-api-3 custom-controls