Google Maps API v3: события кликов, не запущенные в Firefox для пользовательского маркера

создали карту, которую я пытаюсь иметь функцию, аналогичную "Мои карты". У меня есть два выпадающих списка на правой стороне, в зависимости от выбора в этих ddl, вы можете добавить собственный маркер / значок. Вы выбираете тип маркера, затем нажимаете кнопку «+» в верхнем правом углу карты, а затем нажимаете, где вы хотите добавить маркер. Моя проблема в том, что это нормально работает в IE, Safari и Chrome, но не в Firefox. Событие щелчка, похоже, не срабатывает.

Вот местоположение карты: https://ait.saultcollege.ca/Michael.Armstrong/Index.html

Кнопка для добавления маркера в правом верхнем углу есть событие onclick, указывающее на мою функцию placeMarker (). Вот код для placeMarker (), createMarker () ...

function placeMarker() {

    select("placeMarker");

    var infowindow = new google.maps.InfoWindow({}); 
    var catID = document.getElementById('category');
    var typeID = document.getElementById('ddlType');
    var category = catID.options[catID.selectedIndex].value;
    var markerType = typeID.options[typeID.selectedIndex].value;

    if (!markerType) {
        alert("You must select an icon type.");
    } 
    else {
        var moveListener = google.maps.event.addListener(customMap, 'mousemove', function(event) {
            if (mapMarker) {
                mapMarker.setPosition(event.latLng);
            } else {
                mapMarker = createMarker(event.latLng, "test", markerType, "test");
            }
        });

        var clickListener = google.maps.event.addListener(customMap, 'click', function(event) {
            if (mapMarker) {
                select("hand_b");
                google.maps.event.clearListeners(customMap, 'mousemove');
                google.maps.event.removeListener(listener);
                mapMarker = createMarker(event.latLng, "test2", markerType, "test");

                var htmlInfo = "" +
                    "Category:" + category + "" +
                    "Item:" + markerType + "" +
                    "Notes:" +
                    "Location:" + mapMarker.getPosition().toString() + "" +
                    "" +
                    "";

                //infowindow.setContent(htmlInfo);
                //infowindow.open(customMap, mapMarker);
            }
        });
    }
}

function createMarker(latlng, title, icon, html) {
    var mapMarker = new google.maps.Marker({
        position: latlng,
        map: customMap,
        title: title,
        icon: 'Images/' + icon + '.png'
    });
    return mapMarker;
}

function select(buttonId) {
    document.getElementById("hand_b").className = "unselected";
    document.getElementById("placeMarker").className = "unselected";
    document.getElementById(buttonId).className = "selected";
}

Любая помощь или предложения будут отличными. Может быть, это ошибка в ff?

11
задан Michael Armstrong 20 August 2010 в 17:35
поделиться