如何在没有服务器支持的情况下使用传单放大浏览器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在没有服务器支持的情况下使用传单放大浏览器相关的知识,希望对你有一定的参考价值。
我做了一个小的自制地图服务器(只有一些图片(平铺256x256像素))。
它是用固定的缩放(只有12级别的)。
现在它工作正常,我也想放大。 ;-)
现在我想知道我是否只能放大浏览器(使用传单)......所以只需使用给定的图块而不加载更高细节的图块。
我知道,浏览器会更加滞后。但这不是问题。这只是一张仅供私人使用的地图。
var mymap = L.map( 'mapid' ).fitWorld().setView( [ uriparm( 'lat' ) || 0, uriparm( 'lon' ) || 0 ], 12 );
L.tileLayer( 'getbox.php?folder={id}&lz={z}&lx={x}&ly={y}&lid={id}&ld=1', {
maxZoom: 12,
minZoom: 12,
attribution: '',
id: test
} ).addTo( mymap );
答案
利用minNativeZoom
and maxNativeZoom
的L.TileLayer
选项。引用文档:
maxNativeZoom
磁贴源可用的最大缩放编号。如果指定,则所有缩放级别高于
maxNativeZoom
的图块将从maxNativeZoom
级别加载并自动缩放。
(minNativeZoom
的同意)
因此,如果您的磁贴服务器只有12级磁贴,您应该尝试以下方法:
L.tileLayer( 'getbox.php?folder={id}&lz={z}&lx={x}&ly={y}&lid={id}&ld=1', {
maxNativeZoom: 12,
minNativeZoom: 12,
maxZoom: 14,
minZoom: 10,
attribution: '',
id: test
} ).addTo( mymap );
请稍微尝试一下这些值,但要注意minZoom
和minNativeZoom
之间的巨大差异将导致您的浏览器尝试加载几百万个磁贴,并且很可能会崩溃。
以上是关于如何在没有服务器支持的情况下使用传单放大浏览器的主要内容,如果未能解决你的问题,请参考以下文章
Javascript:在没有 Jquery 或插件的情况下放大鼠标悬停