googlemap 之 javascript實(shí)現(xiàn)方法
更新時間:2007年01月09日 00:00:00 作者:
這是一個很典型的一個background-position-x的應(yīng)用。技術(shù)含量并不高,但是思想還是值得思考的,證明了DHTML方面有很多東西可以變通的。用背景用map,如果做得更復(fù)雜一些,用ajax動態(tài)的載入圖片的背景,也是一個小型的map了。我不打算在此項(xiàng)深究,因?yàn)槟_本的速度和效率是有瓶頸的。
預(yù)備知識:
background-position-x ------------- 背景圖的X坐標(biāo)。
background-position-y ------------- 背景圖的Y坐標(biāo)。
event.clientX ------------------------鼠標(biāo)的X坐標(biāo)。
event.clientY ------------------------鼠標(biāo)的Y坐標(biāo)。
JSON --------------------------------- 現(xiàn)在似乎很流行這個詞,自從ajax in action出來后,更火了一把,從廣義的角色上講就是javascript的關(guān)聯(lián)數(shù)組。JSON(JavaScript Object Notation) 也就是類似這樣 var o={name:"never-online",web:"http://www.never-online.net",blog:"http://blog.never-online.net"}從而可以這樣用o.name, o.web或者o['name'],o['web']這樣的數(shù)組關(guān)系形式。
問題解決思路:
這個map的主要難點(diǎn)在于,坐標(biāo)的準(zhǔn)確性,也就是鼠標(biāo)移動時得到background-position的坐標(biāo)方向。
如果解決掉上面的這個問題,成功了一大半。
我采用慣用的方法
坐標(biāo)=用鼠標(biāo)移動后的坐標(biāo)-原始我們存進(jìn)的坐標(biāo)。
原始坐標(biāo)得到方法為:neverOnlineMap._wrapper.X = event.clientX-parseInt(x.backgroundPositionX);
即用鼠標(biāo)當(dāng)前位置-圖像背景的X坐標(biāo)
圖片背景坐標(biāo)=鼠標(biāo)位置-原始位置
Y坐標(biāo)和X坐標(biāo)類似,不再重復(fù)。neverOnlineMap._wrapper.Y = event.clientY-parseInt(x.backgroundPositionY);
源碼如下:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
預(yù)備知識:
background-position-x ------------- 背景圖的X坐標(biāo)。
background-position-y ------------- 背景圖的Y坐標(biāo)。
event.clientX ------------------------鼠標(biāo)的X坐標(biāo)。
event.clientY ------------------------鼠標(biāo)的Y坐標(biāo)。
JSON --------------------------------- 現(xiàn)在似乎很流行這個詞,自從ajax in action出來后,更火了一把,從廣義的角色上講就是javascript的關(guān)聯(lián)數(shù)組。JSON(JavaScript Object Notation) 也就是類似這樣 var o={name:"never-online",web:"http://www.never-online.net",blog:"http://blog.never-online.net"}從而可以這樣用o.name, o.web或者o['name'],o['web']這樣的數(shù)組關(guān)系形式。
問題解決思路:
這個map的主要難點(diǎn)在于,坐標(biāo)的準(zhǔn)確性,也就是鼠標(biāo)移動時得到background-position的坐標(biāo)方向。
如果解決掉上面的這個問題,成功了一大半。
我采用慣用的方法
坐標(biāo)=用鼠標(biāo)移動后的坐標(biāo)-原始我們存進(jìn)的坐標(biāo)。
原始坐標(biāo)得到方法為:neverOnlineMap._wrapper.X = event.clientX-parseInt(x.backgroundPositionX);
即用鼠標(biāo)當(dāng)前位置-圖像背景的X坐標(biāo)
圖片背景坐標(biāo)=鼠標(biāo)位置-原始位置
Y坐標(biāo)和X坐標(biāo)類似,不再重復(fù)。neverOnlineMap._wrapper.Y = event.clientY-parseInt(x.backgroundPositionY);
源碼如下:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
相關(guān)文章
js調(diào)用打印機(jī)打印網(wǎng)頁字體總是縮小一號的解決方法
直接調(diào)用window.print(),但是打印出來后,字體總是縮小一號,后來直接target="_blank",就可以正常打印了,下面是實(shí)現(xiàn)代碼2014-01-01JavaScript數(shù)組常用的增刪改查與其他屬性詳解
這篇文章主要給大家介紹了關(guān)于JavaScript數(shù)組常用的增刪改查與其他屬性的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10詳解用原生JavaScript實(shí)現(xiàn)jQuery的某些簡單功能
本篇文章主要對用原生JavaScript實(shí)現(xiàn)jQuery的某些簡單功能進(jìn)行詳細(xì)全面的講解,具有很好的參考價值,需要的朋友一起來看下吧2016-12-12將Datatable轉(zhuǎn)化成json發(fā)送前臺實(shí)現(xiàn)思路
將Datatable轉(zhuǎn)化成json可以將dt序列化成json,放到前臺的隱藏控件hidBoundary中,具體的實(shí)現(xiàn)如下,有類似需求的朋有可以參考下2013-09-09Javascript json object 與string 相互轉(zhuǎn)換的簡單實(shí)現(xiàn)
下面小編就為大家?guī)硪黄狫avascript json object 與string 相互轉(zhuǎn)換的簡單實(shí)現(xiàn)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09妙用Bootstrap的 popover插件實(shí)現(xiàn)校驗(yàn)表單提示功能
最近使用bootstrap開發(fā)項(xiàng)目比較多,在表單校驗(yàn)功能中用popover插件實(shí)現(xiàn)出錯提示功能很方面,下面小編給大家?guī)砹艘黄P(guān)于Bootstrap的 popover插件實(shí)現(xiàn)校驗(yàn)表單提示功能的實(shí)現(xiàn)代碼,非常不錯,感興趣的朋友一起看看吧2016-08-08javascript實(shí)現(xiàn)iframe框架延時加載的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)iframe框架延時加載的方法,可基于setTimeout實(shí)現(xiàn)這一功能,是非常實(shí)用的技巧,需要的朋友可以參考下2014-10-10