Change style and placeholder with MapLibre
Estimated reading time: 1 minuteThis example uses JawgPlaces.MapLibre
to initialize the Jawg Places MapLibre Plugin on a webpage with a MapLibre or Mapbox map. It will allow you to add custom classes to your input and change its placeholder.
Checkout all options available on Jawg Places JS for MapLibre GL JS on our type documentation.
💡 Don't forget to call either
map.addControl(jawgPlaces)
orjawgPlaces.attachMap(map)
to initialize and connect the input to the map.
The value <YOUR_ACCESS_TOKEN>
in the <script>
tag must be replaced by your own access token from the Jawg Lab.
This example is fully compatible with Mapbox, you can use JawgPlaces.Mapbox
and load mapbox scripts.
<html>
<head>
<script src="https://api.jawg.io/libraries/jawg-places@latest/jawg-places.js?access-token=<YOUR_ACCESS_TOKEN>"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/maplibre-gl.min.css" />
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/maplibre-gl.min.js"></script>
</head>
<body>
<style>
input.custom-class {
color: #ac3bf6;
border-radius: 2em;
border: 1em grey solid;
border-width: 1px;
}
</style>
<div id="my-map" style="height: 100%; min-height: 500px"></div>
<script>
const map = new maplibregl.Map({
container: 'my-map',
style: `https://api.jawg.io/styles/jawg-sunny.json?access-token=<YOUR_ACCESS_TOKEN>`,
center: [0, 0],
zoom: 1,
});
map.addControl(new maplibregl.NavigationControl());
map.addControl(new maplibregl.ScaleControl());
map.addControl(
new JawgPlaces.MapLibre({
searchOnTyping: true,
placeholder: 'Custom Placeholder',
inputClasses: 'custom-class', // can be an array
}),
);
</script>
</body>
</html>