Журнал Компьютерра - 37 от 10 октября 2006 года   ::   Компьютерра

Страница: 129 из 154

Обработка заключается в создании массива записей, каждая из которых является блоком из файла XML (строка 18). В нашем случае в каждой записи содержатся четыре поля:

• name (заголовок метки),

• message (сообщение),

• lat (широта),

• lng (долгота),

и выглядит она следующим образом:

1.

А текст странички принимает следующий вид:

1. var baseIcon = new GIcon();

2. baseIcon.iconSize=new GSize(20,20);

3. baseIcon.iconAnchor=new GPoint(10,20);

4. baseIcon.infoWindowAnchor=new GPoint(10,0);

5. Var gmarkers = [];

6. Var i = 0;

7. function createMarker(point,name,message,micon) {

8. var marker = new GMarker(point, {icon:micon, title:name});

9. GEvent.addListener(marker, “click”, function() {

10. Marker.openInfoWindowHtml(“”+name+”
”+ message);

11. });

12. gmarkers[i] = marker;

13. i++;

14. Return marker;

15. }

16. GDownloadUrl(“t2006.xml”, function(data) {

17. var xml = GXml.parse(data);

18. var markers = xml.documentElement.getElementsByTagName(«marker»);

19. for (var k = 0; k < markers.length; k++) {

20. var point = new GLatLng(parseFloat(markers[k].getAttribute(«lat»)), parseFloat

(mark ers[k].getAttribute(“lng”)));

21. var name = markers[k].getAttribute(“name”);

22. var message = markers[k].getAttribute(“message”);

23. var micon = new GIcon(baseIcon);

24. var icon_number = k + 1;

25. micon.image = “http://www.vkph.com/t2006/i” + icon_number + “.png”;

26. var marker = createMarker(point,name,message,micon);

27. map.addOverlay(marker);

28. }

29. });

После загрузки всех данных из файла в память, массив записей перебирается в цикле (строки 19—28). Для каждого элемента осуществляется выборка и присвоение значений необходимым переменным.

|< Пред. 127 128 129 130 131 След. >|

Java книги

Контакты: [email protected]