Link Search Menu Expand Document

Add attributions on the map

  1. Add a single attribution example
  2. Add multiple attributions example

In this example, we will show how to add one or multiple attributions on the map in JMap NG.

Note that attributions are available in both NG Core and NG App.

Add a single attribution example

In the example bellow, we add a single attribution composed of one hyperlink forwarding to k2geospatial website.

Show example in Codepen.io


The code:

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <meta charset="UTF-8">
    <style>
      #my-custom-map {
        width: 600px;
        height: 600px;
        border: 1px solid grey;
        margin-top: 1rem;
      }
    </style>
  </head>
  <body>
    <div id="my-custom-map" class="jmap_wrapper"></div>
    <script type="text/javascript">
      window.JMAP_OPTIONS = {
        projectId: 1,
        restBaseUrl: "https://jmapdoc.jmaponline.net/services/rest/v2.0",
        anonymous: true,
        map: {
          containerId: "my-custom-map",
          zoom: 13.797865986918877,
          center: {
            x: -75.48063889179525,
            y: 45.664231577062765
          },
          onStartupMapReadyFn: () => {
            JMap.Map.Attribution.addSingle({
              id: "custom-attribution",
              text: "© My custom attribution",
              href: "https://k2geospatial.com/jmap-en/"
            })
          }
        },
      };
    </script>
    <script defer type="text/javascript" src="https://cdn.jsdelivr.net/npm/jmap-core-js@jmap-ng-doc"></script>  
  </body>
</html>

Add multiple attributions example

You can add multiple attributions in one call.

In this example, we add two attributions, one composed of a hyperlink forwarding to stackoverflow website and the other composed of a random image forwading to an example domain.

See example in Codepen.io

The code:

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  <meta charset="UTF-8">
</head>
<body class="jmap_wrapper">
  <script type="text/javascript">
    window.JMAP_OPTIONS = {
      projectId: 1,
      restBaseUrl: "https://jmapdoc.jmaponline.net/services/rest/v2.0",
      anonymous: true,
      map: {
        zoom: 9.573700695830425,
        center: {
          x: -75.48063889179525,
          y: 45.53690235213574
        },
        onStartupMapReadyFn: () => {
          JMap.Map.Attribution.addMultiple([{
              id: "custom-attribution-0",
              text: "© StackOverflow",
              href: "https://stackoverflow.com/"
            },
            {
              id: "custom-attribution-1",
              imageUrl: "https://picsum.photos/180/90",
              href: "https://example.com/"
            }
          ])
        }
      },
    };
  </script>
  <script defer type="text/javascript" src="https://cdn.jsdelivr.net/npm/jmap-core-js@jmap-ng-doc"></script>
</body>
</html>

Copyright © 2022 K2 Geospatial.