javascript - JVectorMap 设置比例低于 1

标签 javascript jquery html css jvectormap

我正在创建一个需要全尺寸 map 的网页,为此我使用了 JVectorMap。 map 的宽度和高度均为 100%。但是,这会使 map 在完全缩小时直接延伸到页面的边缘,这是不希望的。理想情况下,当完全缩小时, map 周围会有一个边框,但当放大时, map 仍会延伸到页面边缘。从本质上讲,我想从 map 开始时缩小得比似乎允许的要多。

在这种情况下,不能使用 HTML 边框和填充,因为尽管它们确实在页面加载时产生了预期的效果,但本地图放大时边框仍然存在。我唯一的想法是尝试设置“比例” ' 将以下代码末尾附近的变量设置为小于零的值:

<script>
    $(function(){
        $('#map').vectorMap({
            map: 'world_mill',
            focusOn: {
                x: 0.5,
                y: 0.5,
                scale: 0.8
            }
        });
    });
</script>

这没有效果,因为任何低于 1 的 'scale' 值似乎都被忽略了。我在下面附上了屏幕截图来说明问题。

当前页面( map 延伸到边缘) Current Page (Map extends to edge)

理想页面( map 有边框 Ideal Page (Map has border)

如有任何帮助,我们将不胜感激!

最佳答案

我将发布我自己问题的答案,以防万一将来有人偶然发现这个问题。似乎 setScale 只能将缩放设置为 zoomMinzoomMax 参数之间的值,因此通过降低 zoomMin到 0.9 我能够成功地使用 setScale 将缩放也减少到 0.9。

因此我得到的最终代码是:

$(function(){
    $('#map').vectorMap({
        map: 'world_mill',
        zoomMin: 0.9,
        focusOn: {
            x: 0.5,
            y: 0.5,
            scale: 0.9
        },
    });
});

关于javascript - JVectorMap 设置比例低于 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39008228/

相关文章:

jquery - 使用 jQuery 或类似工具从 CSS 文件中指定的样式中获取 "#myDiv:hover"样式

html - 点击视频播放 HTML5/CSS3

通过 javascript_include_tag 可用的 javascript 函数,但不是 Assets 管道和 application.js

Javascript Http 获取请求错误 : NS_ERROR_FAILURE

javascript - 数组在 Chrome 控制台上有长度,但在调用 .length 时没有长度

javascript - 创建不连续的滚动框并测量每个部分的时间

jquery - CKEditor 中可拖动的图像

javascript - 如何在angularjs中将范围变量设置为空

html - 为什么文字装饰: none is not working inside HTML <ins> element

javascript - htaccess 实现后阻塞的框架