我正在使用Biostall Googlemaps Library for Codeigniter并在我的HTML视图上设置地图。
在我的页面标题
中 <script type="text/javascript" src="/ci_bootstrap/assets/js/jquery-1.11.0.min.js"> </script>
<?php
echo $map['js'];
?>
我正在尝试为我的地图创建一些自定义代码,作为测试我一直试图在Biostall库之外添加一个简单的点击事件
此代码也在页眉
中<script type="text/javascript">
$(function(){
alert("page Loaded");
$("#map_canvas").click(
function(){alert("Map Clicked")}
)
google.maps.event.addListener(map, 'hover', function() {
alert("Map hovered Over")
console.log(map)
});
})
</script>
在我的HTML视图文件中,我有
<?php
echo '<div id="map_canvas">';
echo $map['html'];
echo '</div>';
?>
第一个警报适用于页面加载
第二个警报适用于地图点击
应该在悬停时触发的第三个警报不起作用。
我在控制台中收到错误&#34; Uncaught TypeError:无法读取属性&#39; _ e3 &#39;未定义&#34;这与&#34; map&#34;有关。
如果我理解正确,我认为问题是由于地图的JavaScript是由库echo $map['js'];
输出的,我试图使用JavaScript在其中引用地图变量。有没有其他人遇到过类似的东西?
答案 0 :(得分:0)
地图不是通过回显$map['js']
来创建的,它是通过调用控制器中的$this->googlemaps->create_map()
创建的,存储结果,将它们传递给视图并回显它们。您可能需要查看示例:
http://biostall.com/demos/google-maps-v3-api-codeigniter-library/