12

I want to remove the "Leaflet.com" that appears on the right bottom of the screen here. How can I do that?

example

30

The Leaflet way: L.map('map', {attributionControl: false, etc...})

A simple $('.leaflet-control-attribution').hide() or non jQuery document.getElementsByClassName( 'leaflet-control-attribution' )[0].style.display = 'none';.

Vladimir himself says it's OK to remove it: https://groups.google.com/d/msg/leaflet-js/fA6M7fbchOs/JTNVhqdc7JcJ, but it seems like you should leave it or acknowledge Leaflet in some way.

| improve this answer | |
  • Thank you for your answer. Your solution worked for me!! – Md Amiruzzaman Jul 11 at 13:07
12

This is perfectly explained in the Leaflet API reference for map options.

| improve this answer | |
2

If you just wanna remove "Leaflet" prefix then :

map.attributionControl.setPrefix('YOUR_ATTRIBUTION')

Where map is an object returned by L.map(...) call.

| improve this answer | |
  • I like the attribution coupled with my tileLayer (I use OpenStreetMap), so I call map.attributionControl.setPrefix() with empty args to remove the Leaflet attribution – kevlened Aug 13 at 16:47
1

For those using react-leaflet, use:

<Map attributionControl={false} />
| improve this answer | |
0

tutorial here

(leafletMapReady)="onMapReady($event);"
  [leafletOptions]="options"


  import { Layer, tileLayer, Map, control } from 'leaflet';
  ...
  options: any = {};
  constructor() {
    this.options['attributionControl'] = false;
  }
  ...
  onMapReady(map: Map) {
    map.addControl(
        control.attribution({
            position: 'bottomright',
            prefix: ''
        })
    );
  }
| improve this answer | |
0

If you use leaflet on Angular you can disable it at this way:

this.map = new Map('mapId', {attributionControl: false});
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.