隨筆 - 81  文章 - 1033  trackbacks - 0
          <2007年3月>
          25262728123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          在浮躁的年代里,我們進取心太切,患得患失;虛榮心太強,戰戰兢兢。一心爭強好勝,惟恐榜上無名。
          I think I can fly , and flying like a bird !
          程序員一名,已售出,缺貨中!

          我的郵件聯系方式

          用且僅用于MSN

          博客點擊率
          free web counter
          free web counter

          常用鏈接

          留言簿(36)

          隨筆檔案

          搜索

          •  

          積分與排名

          • 積分 - 187341
          • 排名 - 309

          最新評論

          閱讀排行榜

          評論排行榜

          作者:CrespoShi,原文出處: http://www.aygfsteel.com/crespo9907/archive/2007/03/23/mapeasy_answer6.html,轉載請保留。

          山茶:
          你好!
          我想在雙擊時獲得當前視圖的bound,在雙擊事件中添加status = MapModel.bound;可是只是得到原始的bound

          // 在地圖上加入雙擊事件
          MapEvent.addListener(map, MapEvent.DBLCLICK, function(e) {
          ?var coord = MapEvent.getEventCoord(e, map);
          ?var marker = new Marker(coord.getPoint(), Marker.LARGE);
          ?map.addOverlay(marker);
          ?marker.setInfo("Hello! it's marker: <a href=\"http://www.hymake.com\" target=\"_blank\">#" + marker.getId() + "</a>");
          status = MapModel.bound;//添加
          });
          ?
          這是怎么回事,貌似我沒有得到當前對象,具體怎么搞?謝謝兄弟!


          ????????對于山茶的這個問題可能需要搞清楚這樣幾個概念:

          ??????1. 在MapModel類中bound屬性被當作一個類似于Java中的靜態變量在使用(注意這里的實質其實和Java的靜態變量完全不同,在內存中每個MapModel實例仍然有自己的一份bound代碼和數據),而當前可視的區域其實是另外一個實例變量viewerBound。

          ??????2. status = MapModel.bound;中直接使用MapModel是不對的,因為在創建地圖對象時候new了一個MapModel實例:??this.mapModel = new MapModel(this.mapId);(見MapBuild.js)這個方法的MapModel實例也就是作為第一個參數傳入的map。

          ??????綜上所述:這里應該由以下方法來得到當前區域。

          ??????status = map.getViewerBound();

          ??????最后提醒山茶一個問題,在設置或者取得某對象的私有屬性時最好使用getX()/setX()方法,雖然在JavaScript中并沒有私有變量的概念,并且無法直接定義作用域(雖然一些JavaScript高手用各種各樣變通的方式實現了作用域),在編碼過程中還是要遵循這些基本準則。

          ??????JavaScript的語法和Java等比起來雖然顯得不那么規范和嚴謹,單正是一些靈活的特性吸引了我們。但是在實際編碼過程中還是要盡量遵循OO編程的基本準則,以免陷入“JS泥潭”。

          ??????只能說以我的JS經驗來看,它確實是一種很有意思,并且非常強大的語言,并不象很多人認為的拿不上臺面,JS同樣可以做復雜的應用,并且在熟手手里JS代碼的產出效率也是異常高的。只是因為各方面的原因可能在調試和維護方面有些不盡人意之處,相信越來越多的業界廠商的關注會改變這種現狀。現在不都已經有了很多非常優秀的IDE和瀏覽器插件嗎?

          ??????推薦兩款JS開發相關的軟件給大家:aptana,FireBug

          ??????apatana作為一個基于Eclipse的優秀JS IDE對提高JS開發效率是無容置疑的,如果你使用Eclipse直接升級個插件就OK,如果你并不使用Eclipse,甚至你更本就不是一個Javaer,或者你根本就不是一個程序員而是設計師,也沒關系。apatana想的很周到,你可以下載到安裝版本,直接給你把精簡的Eclipse也裝了。不過你還是需要個JRE哦。

          ??????FireBug作為FireFox下無敵的開發者插件相信大家也不會陌生,如果你還不知道只能說太可惜了,趕快用用吧,你會發現對調js和頁面的效率不僅僅是提高幾倍的問題。

          ??????本來是回答山茶的問題,有點扯遠了,呵呵。不過上面兩款絕對值得推薦。它們的用法和教程我想google上很多了,至于它們的好處你用了就會知道。

          ??????JavaScript絕對是2007最值得深入學習的語言之一!

          ??????你還沒有開始學習JavaScript?那你還在等什么?!
          posted on 2007-03-23 23:36 cresposhi 閱讀(2719) 評論(5)  編輯  收藏

          FeedBack:
          # re: MapEasy答疑(六) 取得地圖當前Bound 2007-03-26 09:21 賣女孩的小火柴
          沙發啊。。。。。
          幾百年難得在abc的博客里坐一次的啊
          挖哈哈~~  回復  更多評論
            
          # re: MapEasy答疑(六) 取得地圖當前Bound 2007-03-26 11:38 穎穎
          呵呵,等你唄,  回復  更多評論
            
          # re: MapEasy答疑(六) 取得地圖當前Bound 2007-03-26 13:05 cresposhi
          呵呵,美女這么謙讓啊!  回復  更多評論
            
          # re: MapEasy答疑(六) 取得地圖當前Bound 2007-03-27 13:49 山茶
          感謝兄弟指導!!  回復  更多評論
            
          # re: MapEasy答疑(六) 取得地圖當前Bound 2007-03-27 20:31 cresposhi
          客氣客氣,呵呵  回復  更多評論
            

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 陈巴尔虎旗| 原平市| 上栗县| 迁安市| 武功县| 宜黄县| 错那县| 呼图壁县| 延吉市| 三亚市| 白朗县| 黎平县| 乐业县| 兴宁市| 咸阳市| 洛川县| 红安县| 宜阳县| 虹口区| 城步| 黑水县| 富锦市| 久治县| 武宁县| 宝鸡市| 封丘县| 阿拉善左旗| 靖宇县| 丹凤县| 辽阳市| 中江县| 视频| 高密市| 普安县| 新河县| 通河县| 临泉县| 鄄城县| 松溪县| 濮阳县| 尤溪县|