Ignore:
Timestamp:
Jan 21, 2009, 11:23:54 PM (16 years ago)
Author:
jazz
Message:
  • Main.js
    • add click event to menu button to show/hide menu
    • add checked event to deepsea checkbox to show XML data
  • Main.widgets.js
    • modified layout
File:
1 edited

Legend:

Unmodified
Added
Removed
  • oceandb/webapproot/pages/Main/Main.js

    r49 r50  
     1var map;            // map 物件必須是全域變數,才能讓每個圖層存取
    12dojo.declare("Main", wm.Page, {
    23  start: function() {
    34    if (GBrowserIsCompatible()) {
    4      var map = new GMap2(dojo.byId(this.map).domNode);    // 透過 Dojo 取得 DOM 中,名稱為 map 的元件
    5      map.addControl(new GLargeMapControl());          // 加入左上角比例尺規控制列
    6      map.addControl(new GScaleControl());            // 加入左下角比例尺狀態列
    7      map.addControl(new GMapTypeControl());           // 加入右上角"地圖","衛星","混合地圖"按鈕
    8      map.setCenter(new GLatLng(23.8,121), 7);         // 設定預設經緯度北緯 23.8, 東經 121, 預設比例尺 100 公里(7)
    9      map.setMapType(G_SATELLITE_MAP);              // 設定預設底圖為"衛星"
     5     map = new GMap2(dojo.byId(this.map).domNode);      // 透過 Dojo 取得 DOM 中,名稱為 map 的元件
     6     map.addControl(new GLargeMapControl());    // 加入左上角比例尺規控制列
     7     map.addControl(new GScaleControl());   // 加入左下角比例尺狀態列
     8     map.addControl(new GMapTypeControl());   // 加入右上角"地圖","衛星","混合地圖"按鈕
     9     map.setCenter(new GLatLng(23.8,121), 7);   // 設定預設經緯度北緯 23.8, 東經 121, 預設比例尺 100 公里(7)
     10     map.setMapType(G_SATELLITE_MAP);     // 設定預設底圖為"衛星"
    1011    }
    11     var request = GXmlHttp.create();                      // 產生一個非同步的 AJAX XMLHttp 物件
     12  },
     13  deepseaChange: function(inSender, inDisplayValue, inDataValue) {
     14   if(this.deepsea.dataValue)
     15   {
     16    var request = GXmlHttp.create();                    // 產生一個非同步的 AJAX XMLHttp 物件
    1217    var GetDataXml="getdeepstaxml.xml";
    13     request.open("GET",GetDataXml, true);                    // 用 XMLHttp 物件去開啟 http://deepsea.biodiv.tw/getdeepstaxml.asp
    14     request.onreadystatechange = function() {                 // 定義 XMLHttp 有狀態改變的事件處理函數 callback function
     18    request.open("GET",GetDataXml, true);               // 用 XMLHttp 物件去開啟 http://deepsea.biodiv.tw/getdeepstaxml.asp
     19    request.onreadystatechange = function() {           // 定義 XMLHttp 有狀態改變的事件處理函數 callback function
    1520     if (request.readyState == 4) {                     // XMLHttp 的狀態是 Ready (4) 繼續處理 Server 傳回的 XML 資料
    16       var xmlDoc = request.responseXML;                   // xmlDoc = 回傳的 XML 資料
     21      var xmlDoc = request.responseXML;                 // xmlDoc = 回傳的 XML 資料
    1722      var markers = xmlDoc.documentElement.getElementsByTagName("marker");  // 取出名稱為 marker 的 xml 元件, 結果是陣列
    1823      for (var i = 0; i < markers.length; i++) {
    19        var points2 = [];                          // 宣告一個空的陣列 point2 來存起始與結束座標點
     24       var points2 = [];        // 宣告一個空的陣列 point2 來存起始與結束座標點
    2025       // 把 lat1 跟 lng1 塞進起始座標點 GLatLng 物件
    2126       points2.push(new GLatLng(parseFloat(markers[i].getAttribute("lat1")),parseFloat(markers[i].getAttribute("lng1"))));
     
    3035     }
    3136    }
    32     request.send(null);                                      // 送出 XMLHttp 物件的要求
     37    request.send(null);         // 送出 XMLHttp 物件的要求   
     38   }
     39  },
     40  showmenuClick: function(inSender, inEvent) {
     41   this.menu.getValue("showing") ? this.menu.setValue("showing",false) : this.menu.setValue("showing",true);
     42   map.setCenter(new GLatLng(23.8,121), 7);   // 設定預設經緯度北緯 23.8, 東經 121, 預設比例尺 100 公里(7)
    3343  },
    3444  _end: 0
Note: See TracChangeset for help on using the changeset viewer.