google地图多Marker 多infowindow

来源:互联网 发布:十宗罪网络剧百度云 编辑:程序博客网 时间:2024/04/18 15:11
<script type="text/javascript">
        function SetPoint() {
            if (!map) return;
            var liobj = $("#hidedata ul li");
            if (liobj.length == 0) return;
            for (var i = 0; i < liobj.length; i++) {
                var point = liobj.eq(i).find("input[name='point']").val();
                var mname = liobj.eq(i).find("input[name='mname']").val();
                var murl = liobj.eq(i).find("input[name='murl']").val();
                var des = liobj.eq(i).find("input[name='des']").val();
                if (point == "") continue;
                var arr = point.split(",");
                if (arr.length != 2) return;
                longPoint = arr[0];
                latPoint = arr[1];
                var lalgt = new google.maps.LatLng(longPoint, latPoint);


                var mark = new google.maps.Marker({
                    map: map,
                    position: lalgt,
                    title: mname,
                    zIndex: i
                });
                attachSecretMessage(mark, i);
            }


        }


        function attachSecretMessage(marker, number) {
            var liobj = $("#hidedata ul li");
            if (liobj.length == 0) return;
            var curObj = liobj.eq(number);
            var point = curObj.find("input[name='point']").val();
            var mname = curObj.find("input[name='mname']").val();
            var murl = curObj.find("input[name='murl']").val();
            var des = curObj.find("input[name='des']").val();


            var appendStr = "";
            if (murl == "") {
                appendStr = "<h3>" + mname + "</h3>";
            }
            else {
                appendStr = "<h3><a href=\"" + murl + "\" target=\"_blank\">" + mname + "</a>" + "</h3>";
            }
            var infow = new google.maps.InfoWindow
                ({
                    content: appendStr + des,
                    size: new google.maps.Size(50, 50)
                });
            google.maps.event.addListener(marker, 'click', function () {
                infow.open(map, marker);
            });
        }






        $(function () {
            initialize();
            SetPoint();
        });
    </script>