「マイマップ」に似た機能を持たせようとしている地図を作成しました。これらの ddl の選択に基づいて、右側に 2 つのドロップダウンリストがあり、カスタム マーカー/アイコンを追加できます。マーカーの種類を選択し、マップの右上隅にある [+] ボタンをクリックして、マーカーを追加する場所をクリックします。私の問題は、これは IE、Safari、および Chrome では正常に機能しますが、Firefox では機能しないことです。クリックイベントが発生していないようです。
マップの場所は次のとおりです: https://ait.saultcollege.ca/Michael.Armstrong/Index.html
右上にマーカーを追加するボタンには、「placeMarker()」関数を指す onclick イベントがあります。placeMarker()、createMarker() のコードは次のとおりです。
関数 placeMarker() { select("placeMarker"); var infowindow = 新しい google.maps.InfoWindow({}); var catID = document.getElementById('category'); var typeID = document.getElementById('ddlType'); var カテゴリ = catID.options[catID.selectedIndex].value; var markerType = typeID.options[typeID.selectedIndex].value; if (!markerType) { alert("アイコンの種類を選択する必要があります。"); } そうしないと { var moveListener = google.maps.event.addListener(customMap, 'mousemove', function(event) { if (mapMarker) { mapMarker.setPosition(event.latLng); } そうしないと { mapMarker = createMarker(event.latLng, "test", markerType, "test"); } }); var clickListener = google.maps.event.addListener(customMap, 'クリック', function(event) { if (mapMarker) { select("hand_b"); google.maps.event.clearListeners(customMap, 'mousemove'); google.maps.event.removeListener(リスナー); mapMarker = createMarker(event.latLng, "test2", markerType, "test"); var htmlInfo = "" + "カテゴリ:" + カテゴリ + "" + "アイテム:" + マーカータイプ + "" + 「メモ:」 + "場所:" + mapMarker.getPosition().toString() + "" + "" + ""; //infowindow.setContent(htmlInfo); //infowindow.open(customMap, mapMarker); } }); } } 関数 createMarker(latlng、タイトル、アイコン、html) { var mapMarker = 新しい google.maps.Marker({ 位置: 緯度, マップ: customMap、 タイトル: タイトル、 アイコン: '画像/' + アイコン + '.png' }); mapMarker を返します。 } 関数選択(ボタンID){ document.getElementById("hand_b").className = "未選択"; document.getElementById("placeMarker").className = "未選択"; document.getElementById(buttonId).className = "選択済み"; }
どんな助けや提案も素晴らしいでしょう。これはおそらくffのバグでしょうか?