Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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 用新地图(和新选项)替换地图-谷歌地图API_Javascript_Jquery_Ajax_Google Maps_Google Maps Api 3 - Fatal编程技术网

Javascript 用新地图(和新选项)替换地图-谷歌地图API

Javascript 用新地图(和新选项)替换地图-谷歌地图API,javascript,jquery,ajax,google-maps,google-maps-api-3,Javascript,Jquery,Ajax,Google Maps,Google Maps Api 3,我有一个网站,创建了一个带有几个标记的地图 长话短说,我现在想要一个函数,当调用它时,它会创建一个新的映射,用几个新选项替换旧的映射,而无需重新加载页面 我试过几件事都没有用。我最近的一次尝试是清除包含映射的div,并像以前一样重新创建一个 i、 e 这成功地删除了旧地图,但仅此而已 我走对了吗 我很高兴使用jQuery,但经验很少,所以我需要一些帮助 如果您尝试使用一个iframe并在iframe中设置新的src,我有一个使用这种模式的站点,并且工作正常 你可以在我的网站上看到如何工作。 //

我有一个网站,创建了一个带有几个标记的地图

长话短说,我现在想要一个函数,当调用它时,它会创建一个新的映射,用几个新选项替换旧的映射,而无需重新加载页面

我试过几件事都没有用。我最近的一次尝试是清除包含映射的div,并像以前一样重新创建一个

i、 e

这成功地删除了旧地图,但仅此而已

我走对了吗


我很高兴使用jQuery,但经验很少,所以我需要一些帮助

如果您尝试使用一个iframe并在iframe中设置新的src,我有一个使用这种模式的站点,并且工作正常

你可以在我的网站上看到如何工作。

//这收到了设置谷歌地图的参数
函数myGetUrlVars(){
var vars=[],散列;
var url=window.location.href.replace(/&;/gi,,&');
var hashes=url.slice(window.location.href.indexOf(“?”)+1.split(
'&_');
for(var i=0;i
当前只调用一次函数
initialize
(当
窗口的
onload
启动时)

但是,使用
$.empty()
不是一个好主意,它可能会导致内存泄漏


使用现有的地图,删除标记,然后使用
setOptions()
来应用新的选项

在宏伟的计划中,新地图将有依赖于用户输入的选项,因此它必须更加动态,只有一个iframe,我认为您可以使用url中的参数设置新地图。尝试使用函数。谢谢。我以前试过,遇到了很多麻烦,但如果这是最好的方法。我再来一次
    function replaceMap() {

        $('#map-canvas').empty();

        var map2;
        function initialize() {
            var mapOptions = {
                zoom: 8,
                center: new google.maps.LatLng(-34.397, 150.644)
            };
            map2 = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
        }

        google.maps.event.addDomListener(window, 'load', initialize);

    }
      //this recived the parameters to set google maps     

     function myGetUrlVars() {
    var vars = [], hash;
    var url = window.location.href.replace(/&/gi, '&');
    var hashes = url.slice(window.location.href.indexOf('?') + 1).split(
            '&_');
    for ( var i = 0; i < hashes.length; i++) {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}


//*******************************start google api ****************//

params = myGetUrlVars();
var option = params['option'];