更改地图坐标的值

时间:2013-05-28 21:44:50

标签: javascript google-maps-api-3 input

我有以下代码,

<script type="text/javascript">
var map;

$(document).ready(function() {
    initialize();

    $("#menu").on("click", ".panTo", function() {
        var laLatLng = new google.maps.LatLng(4.6747035,-74.0575514); /My question
        map.panTo(laLatLng);
            var marker = new google.maps.Circle({
            strokeColor: "#8ada55",
            fillColor: "#bcff8f",
            strokeOpacity: 0.8,
            strokeWeight: 2,
            fillOpacity: 0.5,
            map: map,
            center: laLatLng,
            radius:300
            }); 
    });
});

function initialize() {
    var myOptions = {
        zoom: 15,
        center: new google.maps.LatLng(4.5980556,-74.0758333),
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map(document.getElementById('map_canvas'), myOptions);;
}
</script>

<div id="map_canvas" style="width: 650px; height:400px"></div>
<div id="menu">
    <label>Location 1</label>
    <input type="button" class="panTo" value="4.6747035,-74.0575514" />
    <br /><br />
</div>

我的问题是如何在Javascript代码中设置输入值的值。?

正好在这一行:LatLng(4.6747035,-74.0575514);

因为我会有很多地址,但是当有人点击按钮时必须更新LatLng。

2 个答案:

答案 0 :(得分:0)

可能需要包含对某些Google内容的引用,但这里有几件事情:

  1. 使用&#34; new&#34;在JavaScript中,有一些(某些)对象定义的引用。 这个问题并不清楚。 新的google.maps.LatLng

  2. 通常,&#34; google.maps&#34;对象似乎有一个属性&#34; LatLng&#34;。 使用&#34; onclick&#34;例如,在web控件上运行,调用JavaScript将此属性修改为:google.maps.LatLng =(x,y);

  3. 但是,这里需要注意的是,我们不知道这个对象是什么,以及它是一个方法/属性。如果它是某种功能或构造函数,那么请查看Google库的文档&#34; maps&#34;对象定义,以了解如何设置&#34; LatLng&#34; property(可能是通过方法调用,在构造函数中定义的等等)。

    基于此,另一个选择是设置全局变量并创建一个新对象:

    var myMap = new google.maps.LatLng(x,y); 其中:x和y是JavaScript函数的输入。

答案 1 :(得分:0)

根据给出的信息,您似乎尝试根据传递给匿名函数的内容设置latlng的值。如果我错了,请纠正我。

这是Jquery .on的文档,它显示了如何通过匿名函数传递数据。 http://api.jquery.com/on/

  

.on(events [,selector] [,data],handler(eventObject))

     

触发事件时要在event.data中传递给处理程序的数据。

所以,你的lat和lng将通过event.data对象传递给你的函数,你可以在你的latlng对象中使用它们。

希望这就是你所要求的