Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌地图-添加新的标记而不必每次初始化地图_Javascript_Jquery_Google Maps_Google Maps Markers - Fatal编程技术网

Javascript 谷歌地图-添加新的标记而不必每次初始化地图

Javascript 谷歌地图-添加新的标记而不必每次初始化地图,javascript,jquery,google-maps,google-maps-markers,Javascript,Jquery,Google Maps,Google Maps Markers,这就是我想做的:我要求用户在输入框中键入纬度+经度,我想在地图上显示该位置的标记,而无需每次初始化地图 我已初始化一个映射,如下所示: <script type="text/javascript"> jQuery(document).ready(function() { var myOptions = { center: new google.maps.LatLng(34.053228, -118.259583), zoom:

这就是我想做的:我要求用户在输入框中键入纬度+经度,我想在地图上显示该位置的标记,而无需每次初始化地图

我已初始化一个映射,如下所示:

<script type="text/javascript">
    jQuery(document).ready(function() {
    var myOptions = {
          center: new google.maps.LatLng(34.053228, -118.259583),
          zoom: 12,
          zoomControl: true,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        };
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
    });
</script>
<div style='height: 400px;'>
    <div id="map_canvas" style="width:100%; float: left; height:100%"></div>
</div>

我在一个jsfiddle=>中尝试了您的代码,所有代码似乎都按预期工作(我减少了一点缩放因子,只是为了查看插入的标记):我在表单中插入了一些坐标(靠近地图中心坐标),标记显示正确

唯一真正的区别是
映射
变量的可见性,以便应用于按钮的
单击
处理程序可以看到它,以及
.on()
方法而不是
.live()


我插入了googlemap API脚本,调用了一个回调函数
createMap()
,在该函数中,我初始化了映射并关联了处理程序,因此通过闭包,它可以访问您的映射

,我在JSFIDLE=>中尝试了您的代码,似乎一切都正常(为了查看插入的标记,我降低了一点缩放因子):我在表单中插入了一些坐标(靠近地图中心坐标),标记显示正确

唯一真正的区别是
映射
变量的可见性,以便应用于按钮的
单击
处理程序可以看到它,以及
.on()
方法而不是
.live()


我插入了GoogleMapAPI脚本,调用了一个回调函数
createMap()
在该函数中,我初始化了映射并关联了处理程序,因此通过闭包,它可以访问您的映射

映射对象未定义。现在我在google maps文档中看到有一个getMap函数,但没有关于如何使用它的解释或示例。变量初始化可能有问题。请尝试初始化alize在ready函数或脚本外部,try.map对象未定义。现在我在google maps文档中看到有一个getMap函数,但没有关于如何使用它的说明或示例。变量初始化可能有问题。一旦尝试在ready函数或脚本外部初始化,然后重试。
<input type="text" size=30 name="lat" id="lat">
<input type="text" size=30 name="lon" id="lon">
<button type="button" id="address_submit">Search</button>
    $("#address_submit").live("click", function() {
    lat = $("#lat").val();
    lon = $("#lon").val();
    var marker = new google.maps.Marker({
          position: new google.maps.LatLng(lat, lon),
          map: map, //HOW DO I GET THIS MAP OBJECT??
          title:"Hello World!"
      });
}