Witam, robię stronę, która pokazuje położenie pojazdu komunikacji, chcę by było można zmienić linię, którą chcę pokazać, ale nie wiem jak to zrobić bo jak zmieniam to wtedy funkcja ze starym numerem dalej działa, wie ktoś jak to rozwiązać?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css"
integrity="sha512-xwE/Az9zrjBIphAcBb3F6JVqxf46+CDLwfLMHloNu6KEQCAWi6HcDUbeOfBIptF7tcCzusKFjFw2yuvEpDL9wQ=="
crossorigin="" />
<script src="https://unpkg.com/[email protected]/dist/leaflet.js"
integrity="sha512-gZwIG9x3wUXg2hdXF6+rVkLF/0Vi9U8D2Ntg4Ga5I5BZpVkVxlJWbSQtXPSiUTtC0TjtGOmxa1AJPuV0CPthew=="
crossorigin=""></script>
<style>
#mapid {
height: 720px;
}
</style>
<title>Document</title>
</head>
<body>
<button type="button">Wybierz linie</button>
<div id="mapid"></div>
<script>
const mymap = L.map('mapid').setView([54.352024, 18.646639], 12);
const marker = L.marker([54.352024, 18.646639]).addTo(mymap);
const attribution =
'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors';
const tileUrl = 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
const tiles = L.tileLayer(tileUrl, { attribution });
tiles.addTo(mymap);
const api_url = "https://ckan2.multimediagdansk.pl/gpsPositions?";
function chooseLine() {
const line = prompt('wybierz linie');
async function getISS() {
const response = await fetch(api_url);
const vehicles = await response.json();
const lat = vehicles["Vehicles"][line]["Lat"];
const lon = vehicles["Vehicles"][line]["Lon"];
marker.setLatLng([lat, lon]);
mymap.setView([lat, lon], 12)
}
getISS();
setInterval(getISS, 1000);
}
const el = document.querySelector("button");
el.addEventListener("click", chooseLine);
</script>
</body>
</html>