javascript - Google Maps API v3, Menghapus ikon Marker atau menukarnya kepada "null"?
Saya sedang menulis aplikasi Python Flask di mana saya menggunakan Google Maps. Saya ingin dapat menambah label pada polyline yang telah saya lukis yang melambangkan laluan kapal.
Laluan dilukis menggunakan satu set koordinat dan ciri polyline API Peta. Saya ingin menambah label masa pada polyline dan cara paling mudah nampaknya adalah menggunakan Penanda Peta. Walau bagaimanapun, saya tidak mahu pin standard besar dipaparkan, tetapi lebih suka ikon/penanda kecil bersama dengan teks saya atau tiada langsung. Setakat yang saya faham, anda boleh membuat "Bulatan" (yang boleh diubahsuai) atau "Penanda" (yang anda hanya boleh menukar ikonnya). Saya lebih suka menggunakan "Bulatan", tetapi nampaknya anda tidak boleh menambah teks padanya.
Bagaimana saya boleh menambah teks pada peta saya dan mengelakkan Pin Google Maps muncul?
Pada masa ini saya mempunyai senarai objek yang mengandungi latitud, longitud dan tarikh + masa. Saya sedang mengulangi senarai itu sambil menambah penanda, tetapi semasa melakukannya saya ingin menyimpan ikon penanda atau sebaliknya melukis bulatan jika ada yang tahu cara melukis bulatan dengan teks tambahan?
for(i = 0; i < markerList.length; i++){
var position = new google.maps.LatLng(markerList[i].lat, markerList[i].lng);
var date = markerList[i].date;
var marker = new google.maps.Marker({
position: position,
label: date,
map: map,
icon: "None" //Produces error: 404 (NOT FOUND)
});
}
Mampu menukar saiz label juga adalah fungsi yang sangat dihargai, tetapi saya tidak dapat mencari sebarang maklumat tentang sama ada ia tersedia. Mampu menukar warna teks juga akan menyenangkan.
Jawapan #1
Memandangkan tiada jawapan yang diberikan lagi dan saya agak telah menemui penyelesaian kepada masalah saya, saya rasa saya akan berkongsi untuk orang lain di luar sana yang mempunyai masalah yang sama. Sekurang-kurangnya sehingga seseorang datang dengan penyelesaian yang lebih baik:
Akhirnya saya menggunakan simbol yang telah ditetapkan dan mengecilkannya kepada saiz 0 seperti berikut:
for(i = 0; i < markerList.length; i++){
var position = new google.maps.LatLng(markerList[i].lat, markerList[i].lng);
var date = markerList[i].date;
var marker = new google.maps.Marker({
position: position,
label: date,
map: map,
icon: {
path: google.maps.SymbolPath.CIRCLE,
scale: 0
}
});
}
Malangnya saya belum menemui cara untuk mengacaukan label itu lagi.