gpt4 book ai didi

javascript - 当它们进入视口(viewport)时延迟加载贴图

转载 作者:行者123 更新时间:2023-11-29 10:57:02 24 4
gpt4 key购买 nike

我试图仅在视口(viewport)上显示时加载 Google Map map 。

我听说过很多关于“延迟加载”原则,但我必须承认我是从 javascript 开始的。

我的代码在桌面上运行完美,但我希望我的移动网站更好。

这是我的代码:

        function initMap() {
var loc = {lat: 45.764043, lng: 4.835658999999964};
var map = new google.maps.Map(document.getElementById('map'), {
center: loc
});
var bounds = new google.maps.LatLngBounds();
var coordinate = document.getElementsByClassName('datajson');
for (var i = 0; i < coordinate.length; i++) {
(function (index) {
var elements = JSON.parse(coordinate[i].value);
var localisation={lat: elements.latitude, lng: elements.longitude};
var marker = new google.maps.Marker({
position:localisation,
map: map
});
bounds.extend(localisation);
})(i);
}
map.setCenter(bounds.getCenter());
map.setZoom(10);
}

function loadScript() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://maps.googleapis.com/maps/api/js?key=XXXXX&'+'callback=initMap';
document.body.appendChild(script);
}

window.onload = loadScript;

如果可能的话,我想听听您对方法和可能的改进的意见。

先谢谢你了

最佳答案

你的方法没问题。为简单起见,您可以使用 <script async> 执行相同的操作google js api,省略了loadScript功能。

但是。延迟加载通常意味着“按需加载”,因此,正如您所说,例如本地图进入视口(viewport)时,而您的 loadScript在页面加载后立即调用。有图书馆,例如 waypoints一个,或 scrollmonitor ,或者你自己做。无论哪种方式,loadScript然后再用。

关于javascript - 当它们进入视口(viewport)时延迟加载贴图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55147046/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com