Aby uniknąć opóźnień w renderowaniu strony, skrypt można załadować asynchronicznie, używając atrybutu async lub defer . Ponieważ skrypt nie uruchamia się wtedy w swoim miejscu na stronie, atrybut data-dom-target jest wymagany do określenia elementu, w którym wstawiona jest mapa. Element można umieścić w dowolnym miejscu na stronie, przed lub po znaczniku script.
<div id="aqi-map"></div>
<script async src="https://aqicn.org/maplet/embed.v1.js"
data-city="paris"
data-lang="pl"
data-dom-target="aqi-map"
data-height="450"></script>
Wynik:
Ładowanie skryptu z JavaScript
Skrypt można również wstawić dynamicznie, na przykład z menedżera tagów lub aplikacji jednostronicowej. Obowiązuje ta sama reguła data-dom-target :
<div id="aqi-map"></div>
<script>
var s = document.createElement("script");
s.src = "https://aqicn.org/maplet/embed.v1.js";
s.setAttribute("data-city", "london");
s.setAttribute("data-dom-target", "aqi-map");
s.setAttribute("data-lang", "pl");
document.head.appendChild(s);
</script>