peristiwa
Daftar kandungan
- 1 Gambaran keseluruhan acara peta
- 2
- Parameter acara dan ini
- 4 . minat . Contohnya, dalam penyemak imbas, interaksi tetikus dan papan kekunci pengguna boleh mencipta peristiwa yang disebarkan dalam DOM. Program yang berminat dengan acara tertentu mendaftarkan pendengar acara JavaScript untuk acara tersebut dan melaksanakan kod apabila mereka menerima acara tersebut. Baidu Map API mempunyai model acaranya sendiri Pengaturcara boleh mendengar acara tersuai objek API peta Kaedah penggunaan adalah serupa dengan acara DOM. Tetapi sila ambil perhatian bahawa acara API Peta adalah bebas dan berbeza daripada acara DOM standard. Mendengar Acara
Untuk acara pada objek API Peta, sila rujuk dokumentasi rujukan API yang lengkap. Kaedah addEventListener mempunyai dua parameter: nama acara untuk didengar dan fungsi yang akan dipanggil apabila acara dicetuskan. Dalam contoh di bawah, kotak amaran muncul setiap kali pengguna mengklik pada peta.
var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); map.addEventListener("click", function(){ alert("您点击了地图。"); });
Dengan mendengar acara, anda juga boleh menangkap status selepas acara dicetuskan. Contoh berikut menunjukkan maklumat latitud dan longitud pusat peta selepas pengguna menyeret peta.
var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); map.addEventListener("dragend", function(){ var center = map.getCenter(); alert("地图中心点变更为:" + center.lng + ", " + center.lat); });
Parameter acara dan ini
Dalam model acara DOM standard (Peristiwa Tahap 2 DOM), fungsi mendengar akan mendapat objek acara e, di mana maklumat tentang acara boleh diperolehi. Pada masa yang sama, dalam fungsi mendengar, ini akan menunjuk kepada elemen DOM yang mencetuskan acara. Model acara API Peta Baidu adalah serupa dengan ini Objek acara e dihantar dalam fungsi mendengar acara Setiap parameter e mengandungi sekurang-kurangnya jenis (jenis) dan objek yang mencetuskan peristiwa (sasaran). API juga memastikan bahawa ini dalam fungsi menghala ke objek API yang mencetuskan (dan juga terikat kepada) acara tersebut.
Sebagai contoh, dapatkan koordinat latitud dan longitud klik melalui parameter e.
var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); map.addEventListener("click", function(e){ alert(e.point.lng + ", " + e.point.lat); });
Atau dapatkan tahap zum peta melalui ini.
var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); map.addEventListener("zoomend", function(){ alert("地图缩放至:" + this.getZoom() + "级"); });
Alih keluar acara mendengar
Apabila anda tidak mahu lagi mendengar acara, anda boleh mengalih keluar acara mendengar. Setiap objek API menyediakan removeEventListener untuk mengalih keluar fungsi mendengar acara.
Dalam contoh di bawah, klik pertama pengguna pada peta akan mencetuskan fungsi mendengar acara Fungsi mendengar acara dialih keluar di dalam fungsi, jadi klik berikutnya tidak akan mencetuskan fungsi mendengar.
var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); function showInfo(e){ alert(e.point.lng + ", " + e.point.lat); map.removeEventListener("click", showInfo); } map.addEventListener("click", showInfo);