Hi,

I got a question about my map. I searched this group,
but most of them are not quite similar to my case. Can any one here
give me a solution? Thanks soooo much.
I load all the points from mySql to xml. It is like more than 1500 I
believe.
the loading time of this process is not so long.

and then i run the following code to load the points from the xml to
the map
however, the speed is extremely slow. It is acceptable in firefox, but
not it IE.
IE is just simply not responding for 2-3 minutes until all the points
are fully plotted.

is there any way to improve? In firefox, even the points are not fully
plotted on the map
i can still move the map or do other things with my browser. How to I
achieve this in IE?

function getMarks(url) { /* pass url during the call. */
        map.closeInfoWindow(); /*close any InfoWindows that happen to be
open  */
        map.clearOverlays();
        var gbuilding = [];
        var gdistrict = [];
        var gapart = [];
        var gmall = [];
        var gschool =[];
        var request = GXmlHttp.create(); /* use the XML methods  */
        request.open("GET", url, true);
        request.onreadystatechange = function() {
        if (request.readyState == 4)
                {
                        var xmlDoc = request.responseXML; /* php returns 'XML' 
*/
                        var markers = 
xmlDoc.documentElement.getElementsByTagName
("marker");
                        for (var loop1=0;loop1<markers.length;loop1++)
                        {
                                var lat = 
parseFloat(markers[loop1].getAttribute("lat"));
                                var lng = 
parseFloat(markers[loop1].getAttribute("lng"));
                                var point = new GLatLng(lat,lng);
                                var type = markers[loop1].getAttribute("type");
                                var html = "";
                                if (type=="building") // << this one contain 
more than 1000
records
                                {
                                        var propertyID = 
markers[loop1].getAttribute("propertyID");
                                        var pid = 
markers[loop1].getAttribute("pid");
                                        var name = 
markers[loop1].getAttribute("name");
                                        var street = 
markers[loop1].getAttribute("street");
                                        var district = 
markers[loop1].getAttribute("district");
                                        var layout = 
markers[loop1].getAttribute("layout");
                                        var rental = 
markers[loop1].getAttribute("rental");
                                        var size = 
markers[loop1].getAttribute("size");
                                        var year = 
markers[loop1].getAttribute("year");
                                        var proptype = 
markers[loop1].getAttribute("proptype");
                                        var photo = 
markers[loop1].getAttribute("photo");
                                        photo = '<img src="'+photo+'" 
width="134" height="123">';

html = '<div style="position:relative;top:0px;left:0px;width:
295px;height:123px">';
html+= '<div style="position:absolute;top:0px;left:0px;width:
134px;height:123px;border: 1px solid #edeae2">'+photo+'</div>';
html+= '<div style="position:relative;top:0px;left:140px;width:
155px;height:123px">';
html+= '<span class="bluetxt">'+name+'</span><br>';
html+= street+'<br>';
html+='<span class="search_details_subhead">'+proptype+'</span><br>';
html+= '<table cellpadding="0" cellspacing="0" width="155"
style="margin-top:5px"><tr>';
html+= '<td><span style="color:#006699">Rental: </span></
td><td>'+rental+'</td></tr><tr>';
html+= '<td><span style="color:#006699">Layout: </span></
td><td>'+layout+'</td></tr><tr>';
html+= '<td><span style="color:#006699">Size: </span></td><td>'+size
+'</td></tr></table>';
html+= '<div style="margin-top:5px;text-align:right;width:155px;"><a
href="http://www.colliershomes.com/highlighted_property_details.php?
distid='+district+'&pagetoback=property_highlights&property='+pid+'"
style="font-size:14px; color:#cc0033"><b>Detail</b></a></div>';
html+= '</div></div>';
                        if(propertyID == '<?=$tprop['propertyID']?>')
                        {
                                var marker = createMarker(point,html,cicon);
                        }
                        else
                        {
                                var marker = createMarker(point,html,bicon);
                        }
                                gbuilding.push(marker);

                        }
                                if (type=="district")
                                {
                                        var name = 
markers[loop1].getAttribute("name");
                                        var district = 
markers[loop1].getAttribute("district");
                                        var photo = 
markers[loop1].getAttribute("photo");
html = '<div style="width:222px;height:155px;">';
html+= '<table cellpadding="0" cellspacing="0" width="222"><tr>';
html+= '<td class="bluetxt"><b>'+name+'</b></td><td align="right">';
html+= '<a href="http://www.colliershomes.com/quick_facts.php?
district='+district+'" style="font-size:12px;
color:#cc0033"><b>Detail</b></a>&nbsp;&nbsp;</td></tr></table>';
html+= '<div style="border: 1px solid #edeae2;width:222px;height:
135px;"><img src="'+photo+'" width="222" height="135"><br></div>';
html+= '</div>';

                                        var marker = 
createMarker(point,html,dicon);
                                        gdistrict.push(marker);
                                }
                                if (type=="sa")
                                {
                                        var name = 
markers[loop1].getAttribute("name");
                                        var district = 
markers[loop1].getAttribute("district");
                                        var street = 
markers[loop1].getAttribute("street");
                                        var rental = 
markers[loop1].getAttribute("rental");
                                        var size = 
markers[loop1].getAttribute("size");
                                        var ref = 
markers[loop1].getAttribute("ref");
                                        var photo = 
markers[loop1].getAttribute("photo");
                                        photo = '<img src="'+photo+'" 
width="134" height="123">';

html = '<div style="position:relative;top:0px;left:0px;width:
295px;height:123px">';
html+= '<div style="position:absolute;top:0px;left:0px;width:
134px;height:123px;border: 1px solid #edeae2">'+photo+'</div>';
html+= '<div style="position:relative;top:0px;left:140px;width:
155px;height:123px">';
html+= '<span class="bluetxt">'+name+'</span><br>';
html+= street+'<br>';
html+= '<table cellpadding="0" cellspacing="0" width="155"
style="margin-top:5px"><tr>';
html+= '<td><span style="color:#006699">Rental: </span></
td><td>'+rental+'</td></tr><tr>';
html+= '<td><span style="color:#006699">Size: </span></td><td>'+size
+'</td></tr></table>';
html+= '<div style="margin-top:5px;text-align:right;width:155px;"><a
href="http://www.colliershomes.com/apartment_details.php?apartid='+ref
+'&prop_or_apart=service&pagetoback=search_property" style="font-size:
14px; color:#cc0033"><b>Detail</b></a></div>';
html+= '</div></div>';
                                        var marker = 
createMarker(point,html,aicon);
                                        gapart.push(marker);
                                }
                                if (type=="mall")
                                {
                                        var name = 
markers[loop1].getAttribute("name");
                                        var district = 
markers[loop1].getAttribute("district");
                                        var street = 
markers[loop1].getAttribute("street");
                                        html = '<div 
style="width:150px;height:50px;">'
                                        html+= '<span 
class="bluetxt"><b>'+name+'</b></span><br>';
                                        html+= 
'<b>'+street+'<br>'+district+'</b></div>';
                                        var marker = 
createMarker(point,html,micon);
                                        gmall.push(marker);
                                }
                                if (type=="school")
                                {
                                        var name = 
markers[loop1].getAttribute("name");
                                        var district = 
markers[loop1].getAttribute("district");
                                        var address = 
markers[loop1].getAttribute("address");
                                        var tel = 
markers[loop1].getAttribute("tel");
                                        var fax = 
markers[loop1].getAttribute("fax");
                                        var email = 
markers[loop1].getAttribute("email");
                                        var site = 
markers[loop1].getAttribute("site");
                                        html ='<table cellpadding="0" 
cellspacing="0" width="250">';
                                        html +='<tr><td 
class="bluetxt"><b>'+name+'</b></td></tr>';
                                        html +='<tr><td><b>'+address+'</b><br 
/><br></td></tr>';
                                        html +='<tr><td>Tel: '+tel+'</td></tr>';
                                        if (fax!='') html +='<tr><td>Fax: 
'+fax+'</td></tr>';
                                        if (email!='')html +='<tr><td>Email: <a 
href="mailto:'+email
+'">'+email+'</a></td></tr>';
                                        if (site!='')html +='<tr><td>Site: <a 
href="'+site+'">'+site+'</
a></td></tr>';
                                        html +='</table>';

                                        var marker = 
createMarker(point,html,sicon);
                                        gschool.push(marker);
                                }
                        }

                                md.addMarkers(gdistrict,12,19);
                                ma.addMarkers(gapart,14,19);
                                mb.addMarkers(gbuilding,16,19);
                                mm.addMarkers(gmall,13,19);
                                ms.addMarkers(gschool,13,19);
                                md.refresh();
                                ma.refresh();
                                mb.refresh();
                                mm.refresh();
                                ms.refresh();
                }
                };
        request.send(null);
}



Thanks soooooooooooooooooo much
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Maps API" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/Google-Maps-API?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to