javascript - Google map 上的 .setZoom() 函数

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

我使用以下方法创建 map :

var mapOptions = {
        zoom : 15
    };
    //Create map.
    map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

我在 html 文件上添加了一个 slider :

 <div class="sliderBar" id="sliderBar">
                <input type="range" min="1" max="100" value="1" step="1"
                    onchange="showValue(this.value)" /> <span id="range">1</span>
</div>

因此,当 slider 的值发生变化时,我会调用 showValue(this.value) 函数

使用此功能我必须更改 map 缩放,但它仅在第一次时有效。 因此,当我更改值时有效,但如果我再次更改值则不起作用。

这是我的功能:

function showValue(newValue) {
    document.getElementById("range").innerHTML = newValue;

    //var value=1;
    value = newValue;  

    if(50<value<=100){
        map.setZoom(11);
    }else if(25<value<=50){
        map.setZoom(12);
    }else if(10<value<=25){
        map.setZoom(13);
    }else if(5<value<=10){
        map.setZoom(14);
    }else{
        map.setZoom(15);
    }
}

如何解决这个问题?

最佳答案

找到/解决了。 if 条件有问题

以这种方式尝试条件

function showValue(newValue) {
    document.getElementById("range").innerHTML = newValue;


    value = newValue;  

    if ( value > 10 &&  value <= 25){
        map.setZoom(13);
        return 
    }
    if ( value > 25 &&  value <= 50){
        map.setZoom(12);
        return; 
    }
    if ( value > 50 && value <= 100){
        map.setZoom(11);
        return
    }
    if (  value > 5 && value <= 10){
        map.setZoom(14);
        return
    }

    map.setZoom(15);
    return 
}

关于javascript - Google map 上的 .setZoom() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31288407/

相关文章:

javascript - 自动填充Google map 搜索栏(地址选择器)

Javascript 将对象分解为参数

javascript - 二维 map 数组上的简单 Javascript 碰撞检测

javascript - nativebase 中的大写按钮

javascript - 在 route 使用航点 - Google map 路线服务

javascript - 如何在 Google map v3 中的每个标记上添加编号?

JavaScript 异步作用域

javascript - 如何从全局范围中切断函数

html - 使用显示时 Google map 被裁剪 :Inherit;

javascript - Google map API 扭曲标记