LeafletJS - การควบคุม
Leaflet ให้การควบคุมที่หลากหลายเช่นการซูมการระบุแหล่งที่มาขนาด ฯลฯ โดยที่ -
Zoom- โดยค่าเริ่มต้นการควบคุมนี้จะอยู่ที่มุมบนซ้ายของแผนที่ มันมีสองปุ่ม"+" และ "–"ซึ่งคุณสามารถซูมเข้าหรือซูมออกแผนที่ได้ คุณสามารถลบการควบคุมการซูมเริ่มต้นได้โดยการตั้งค่าzoomControl ตัวเลือกของตัวเลือกแผนที่เพื่อ false.
Attribution- โดยค่าเริ่มต้นการควบคุมนี้จะอยู่ที่มุมขวาล่างของแผนที่ จะแสดงข้อมูลการระบุแหล่งที่มาในกล่องข้อความขนาดเล็ก โดยค่าเริ่มต้นจะแสดงข้อความ คุณสามารถลบการควบคุมการระบุแหล่งที่มาเริ่มต้นได้โดยการตั้งค่าattributionControl ตัวเลือกของตัวเลือกแผนที่เพื่อ false.
Scale- โดยค่าเริ่มต้นการควบคุมนี้จะอยู่ที่มุมล่างซ้ายของแผนที่ จะแสดงศูนย์กลางปัจจุบันของหน้าจอ
ในบทนี้เราจะอธิบายวิธีสร้างและเพิ่มการควบคุมทั้งสามนี้ลงในแผนที่ของคุณโดยใช้ไลบรารี Leaflet JavaScript
ซูม
หากต้องการเพิ่มการควบคุมการซูมของคุณเองลงในแผนที่โดยใช้ไลบรารี Leaflet JavaScript ให้ทำตามขั้นตอนด้านล่าง -
Step 1 - สร้างไฟล์ Map วัตถุโดยส่งผ่านองค์ประกอบ (สตริงหรือวัตถุ) และตัวเลือกแผนที่ (ไม่บังคับ)
Step 2 - สร้างไฟล์ Layer ออบเจ็กต์โดยส่ง URL ของไทล์ที่ต้องการ
Step 3 - เพิ่มวัตถุเลเยอร์ลงในแผนที่โดยใช้ไฟล์ addLayer() วิธีการของ Map ชั้นเรียน
Step 4 - สร้างตัวแปร zoomOptions และกำหนดค่าข้อความของคุณเองสำหรับตัวเลือกการซูมเข้าและซูมออกแทนที่จะเป็นค่าเริ่มต้น (+ และ -)
จากนั้นสร้างตัวควบคุมการซูมโดยส่งผ่านตัวแปร zoomOptions ไปที่ L.control.zoom() ดังแสดงด้านล่าง
// zoom control options
var zoomOptions = {
zoomInText: '1',
zoomOutText: '0',
};
// Creating zoom control
var zoom = L.control.zoom(zoomOptions);
Step 5 - เพิ่มวัตถุควบคุมการซูมที่สร้างขึ้นในขั้นตอนก่อนหน้าลงในแผนที่โดยใช้ไฟล์ addTo() วิธี.
// Adding zoom control to the map
zoom.addTo(map);
ตัวอย่าง
ต่อไปนี้เป็นรหัสสำหรับเพิ่มการควบคุมการซูมของคุณเองลงในแผนที่ของคุณแทนที่จะเป็นค่าเริ่มต้น ที่นี่เมื่อกด 1 แผนที่จะซูมเข้าและเมื่อกด 0 แผนที่จะซูมออก
<!DOCTYPE html>
<html>
<head>
<title>Zoom Example</title>
<link rel = "stylesheet" href = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css"/>
<script src = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script>
</head>
<body>
<div id = "map" style = "width:900px; height:580px"></div>
<script>
// Creating map options
var mapOptions = {
center: [17.385044, 78.486671],
zoom: 10,
zoomControl: false
}
var map = new L.map('map', mapOptions); // Creating a map object
// Creating a Layer object
var layer = new L.TileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png');
map.addLayer(layer); // Adding layer to the map
// zoom control options
var zoomOptions = {
zoomInText: '1',
zoomOutText: '0',
};
var zoom = L.control.zoom(zoomOptions); // Creating zoom control
zoom.addTo(map); // Adding zoom control to the map
</script>
</body>
</html>
สร้างผลลัพธ์ต่อไปนี้ -
แสดงที่มา
หากต้องการเพิ่มการระบุแหล่งที่มาของคุณเองลงในแผนที่โดยใช้ไลบรารี Leaflet JavaScript ให้ทำตามขั้นตอนด้านล่าง -
Step 1 - สร้างไฟล์ Mapวัตถุโดยส่งผ่านองค์ประกอบ< div > (สตริงหรือวัตถุ) และตัวเลือกแผนที่ (ไม่บังคับ)
Step 2 - สร้างไฟล์ Layer ออบเจ็กต์โดยส่ง URL ของไทล์ที่ต้องการ
Step 3 - เพิ่มวัตถุเลเยอร์ลงในแผนที่โดยใช้ไฟล์ addLayer() วิธีการของ Map ชั้นเรียน
Step 4 - สร้างไฟล์ attrOptions ตัวแปรและกำหนดค่าคำนำหน้าของคุณเองแทนค่าเริ่มต้น (แผ่นพับ)
จากนั้นสร้างการควบคุมการระบุแหล่งที่มาโดยส่งไฟล์ attrOptions ตัวแปรเป็น L.control.attribution() ดังแสดงด้านล่าง
// Attribution options
var attrOptions = {
prefix: 'attribution sample'
};
// Creating an attribution
var attr = L.control.attribution(attrOptions);
Step 5 - เพิ่มไฟล์ attribution control วัตถุที่สร้างขึ้นในขั้นตอนก่อนหน้าไปยังแผนที่โดยใช้ addTo() วิธี.
// Adding attribution to the map
attr.addTo(map);
ตัวอย่าง
โค้ดต่อไปนี้จะเพิ่มการควบคุมการระบุแหล่งที่มาของเราเองในแผนที่ของคุณแทนที่จะเป็นค่าเริ่มต้น ที่นี่จะแสดงตัวอย่างการระบุแหล่งที่มาของข้อความแทน
<!DOCTYPE html>
<html>
<head>
<title>Attribution Example</title>
<link rel = "stylesheet" href = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css"/>
<script src = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script>
</head>
<body>
<div id = "map" style = "width: 900px; height: 580px"></div>
<script>
// Creating map options
var mapOptions = {
center: [17.385044, 78.486671],
zoom: 10,
attributionControl: false
}
var map = new L.map('map', mapOptions); // Creating a map object
// Creating a Layer object
var layer = new L.TileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png');
map.addLayer(layer); // Adding layer to the map
// Attribution options
var attrOptions = {
prefix: 'attribution sample'
};
// Creating an attribution
var attr = L.control.attribution(attrOptions);
attr.addTo(map); // Adding attribution to the map
</script>
</body>
</html>>
สร้างผลลัพธ์ต่อไปนี้ -
มาตราส่วน
หากต้องการเพิ่มการควบคุมมาตราส่วนของคุณเองลงในแผนที่โดยใช้ไลบรารี Leaflet JavaScript ให้ทำตามขั้นตอนด้านล่าง -
Step 1 - สร้างไฟล์ Mapวัตถุโดยส่งผ่านองค์ประกอบ< div > (สตริงหรือวัตถุ) และตัวเลือกแผนที่ (ไม่บังคับ)
Step 2 - สร้างไฟล์ Layer ออบเจ็กต์โดยส่ง URL ของไทล์ที่ต้องการ
Step 3 - เพิ่มไฟล์ layer คัดค้านแผนที่โดยใช้ addLayer() วิธีการของ Map ชั้นเรียน
Step 4 - สร้างการควบคุมขนาดโดยผ่านการใช้งาน L.control.scale() ดังแสดงด้านล่าง
// Creating scale control
var scale = L.control.scale();
Step 5 - เพิ่มไฟล์ scale control วัตถุที่สร้างขึ้นในขั้นตอนก่อนหน้าไปยังแผนที่โดยใช้ addTo() วิธีการดังแสดงด้านล่าง
// Adding scale control to the map
scale.addTo(map);
ตัวอย่าง
รหัสต่อไปนี้จะเพิ่มการควบคุมมาตราส่วนให้กับแผนที่ของคุณ
<!DOCTYPE html>
<html>
<head>
<title>Scale Example</title>
<link rel = "stylesheet" href = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css" />
<script src = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script>
</head>
<body>
<div id = "map" style = "width:900px; height:580px"></div>
<script>
// Creating map options
var mapOptions = {
center: [17.385044, 78.486671],
zoom: 10
}
// Creating a map object
var map = new L.map('map', mapOptions);
// Creating a Layer object
var layer = new L.TileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png');
map.addLayer(layer); // Adding layer to the map
var scale = L.control.scale(); // Creating scale control
scale.addTo(map); // Adding scale control to the map
</script>
</body>
</html>
สร้างผลลัพธ์ต่อไปนี้ -