Le contenu de cet article est une introduction à l'événement de clic (exemple de code) de Baidu Map dans le mobile H5. Il a une certaine valeur de référence. J'espère que cela vous sera utile.
Selon l'explication officielle de Baidu Maps, les 4 événements suivants peuvent être surveillés dans la page mobile H5 :
touchstart, touchmove, touchend, longpress
Et si l'événement clic est surveillé sur la carte, le code de l'événement ne sera pas exécuté sur le terminal mobile.
Lorsque j'ai fait une demande auparavant, j'ai surveillé l'événement touchend pour la carte. Je n'ai jamais pensé que lorsque je faisais glisser la carte, le code dans le touchend était également exécuté. Vous devez donc simuler un événement tap comme zepto pour résoudre ce problème. Mon code est :function initMap(baseData) { var mp = new BMap.Map('map'); var point = new BMap.Point( baseData.data.gardenLongitude, baseData.data.gardenLatitude ); mp.centerAndZoom(point, 15); // 保存 touch 对象信息 var obj = {}; mp.addEventListener('touchstart', function (e) { obj.e = e.changedTouches ? e.changedTouches[0] : e; obj.target = e.target; obj.time = Date.now(); obj.X = obj.e.pageX; obj.Y = obj.e.pageY; }); mp.addEventListener('touchend', function (e) { obj.e = e.changedTouches ? e.changedTouches[0] : e; if ( obj.target === e.target && // 大于 750 可看成长按了 ((Date.now() - obj.time) <p class="comments-box-content"></p>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!