在使用mapbox的时候发现官方虽然提供了全屏组件和地图导出的插件,但是使用起来不方便,而且全屏按钮的样式和位置也是很难改,很费劲,因此就想着自己写一个组件来实现全屏和地图导出(地图截屏)
其实原理很简单,全屏的原理其实就是让页面上的某个元素,例如div,canvas等全屏,现在我们的目的就是让mapbox所渲染的那个canvas全屏就行了。因此我们可以这样做:
1.首先要了解如何让一个普通的html元素全屏?
我们可以写下面这段代码:
function launchIntoFullscreen(element) {
if (element.requestFullscreen) {
element.requestFullscreen();
} else if (element.mozRequestFullScreen) {
element.mozRequestFullScreen();
} else if (element.webkitRequestFullscreen) {
element.webkitRequestFullscreen();
} else if (element.msRequestFullscreen) {
element.msRequestFullscreen();
}
}
我们封装一个函数,这个函数的参数是一个dom元素,