因此,我试图找出一种方法来更改 Google Maps V3 标记的 HTML,这些标记在从数据库中提取之后但在它们被推送到数组之前。
当调用 getFishing() 时,我想运行 convertRate(rate) 以便如果 rate 变量等于或大于 2,它会显示标记本身的 HTML 中的图片。我已经尝试将它放在 bindInfoWindow4() 中,并且在 getFishing() 函数中尝试了几个地方,但没有成功。有没有人这样做过?标记被推到fishArray之后是否有可能?
     function getFishing() {
        fishingUrl("XML_Fishing.php", function (data) {
            var xml = data.responseXML;
            var markers = xml.documentElement.getElementsByTagName("marker");
            for (var i = 0; i < markers.length; i++) {
                var id = markers[i].getAttribute("id");
                var title = markers[i].getAttribute("title");
                var rate = markers[i].getAttribute("rate");
                var Fishhtml = "<img id='1star' src='images/1star.png' style='visibility:hidden'>";
                var icon = FishingIcon;
                var Fishmark = new google.maps.Marker({
                    map: map,
                    position: point,
                    icon: icon.icon
                });
                fishArray.push(Fishmark);
                bindInfoWindow4(Fishmark, map, Fishinfo, Fishhtml);
            }
        });
    }
    function convertRate(rate) {
        if (rate >= 2) {
            document.getElementById("1star").style.visibility = 'visible';
        }
    }
    function bindInfoWindow4(marker, map, infoWindow, html) {
        google.maps.event.addListener(marker, 'click', function () {
            infoWindow.setContent(html);
            infoWindow.open(map, marker);
        });
    }