1. 怎麼解決javascript 谷歌地圖字體沒辦法載入的問題
可以用國內cdn加速,比如360的。
1、首先在程序源代碼中找到調用Google前端公共庫的地址,比如:
js"><scripttype="text/javascript"src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js?ver=3.4.2"></script>
2、將Google前端庫的域名 ajax.googleapis.com 修改為:ajax.useso.com 即可(只需改動主機地址),如下所示:
<scripttype="text/javascript"src="http://ajax.useso.com/ajax/libs/jquery/1.7.2/jquery.min.js?ver=3.4.2"></script>
//http://www.hi-docs.com/article/detail-MzI=.html
2. 在百度地圖中確定一個點,然後保存下經緯度,存至資料庫,怎麼實現呢還有讀取的時候顯示標注的這個店的地圖
//添加標記點擊監聽
marker.addEventListener("click", function (e) {
gc.getLocation(e.point, function (rs) {
showLocationInfo(e.point, rs);
});
});
map.centerAndZoom(point, 15); //設置中心點坐標和地圖級別
map.addOverlay(marker); //將標記添加到地圖中
3. android Map API Key 的申請
google地圖聽說好像從2012年年底開始收費,我們公司做地圖方面的項目以前使用google地圖,但從去年開始轉為網路地圖,現在已經基本改成網路地圖了。建議也試試網路地圖吧
下面是網上查到的資料:
Google地理開發博客宣布,谷歌地圖API(Google Maps API)將不再免費提供,當用戶調用谷歌地圖API超過一定限制,將會按照超出的次數來收取費用,費用是每一千次調用4-10美元左右。
Google建議使用Google Maps API的開發商,需要評估一下調用谷歌地圖的用法,確認他們的服務是否受到影響。如果調用次數超過限制,則需要:
1、降低調用Google Maps API的次數,將其限制在每天二萬五千次以下。
2、根據超出的調用次數支付一定費用。
3、購買Google Maps API的高級許可證
谷歌地圖調用限制
免費的谷歌地圖API用戶依舊可以在限制范圍內繼續免費使用,具體的調用限制是:
1、每天地圖API調用次數少於25000次。
2、每天彩色地圖(Styled Maps)API的調用次數少於2500次。
收費標准
Google在地圖API的FAQ中列出了如下的收費標准:
服務 每天免費 超出後千次調用收費(美元)
JS Maps API v3 25,000 $4
JS Maps API v3 styled maps 2,500 $4 / $8
Static Maps API 25,000 $4
Static Maps API styled maps 2,500 $4 / $8
Street View Image API 25,000 $4
JS Maps API v2 25,000 $10
對於企業用戶來說,通常會購買Google Maps API Premier較為合算,其價格以地圖調用量為參考依據,價格每年$10,000起。對於個人用戶來說,可以登錄Google APIs Console來監控API的調用次數以及目前的訪問次數,如果調用次數過高則需要採取一定措施。
免費模式的商業化
對中國的消費者來說,付費習慣尚未養成。而對於資金實力不強的中小開發者來說,選擇免費模式是發展的首選,然而,免費模式如果長期運營,無疑有個尷尬現實:服務提供商為大眾貢獻了優質的服務,投入了不少運營成本,卻無法從中獲得有意義的收入,來支撐服務的長期運營。因此,將原先的「免費」服務通過各種方式來進行收費,就成為服務長期運營的手段。
世界上沒有免費的午餐,免費模式是個美麗的陷阱。很多打著「免費」旗號的大公司,在投入大量資金,通過「免費」的模式擁有了足夠多的用戶,並取得了市場的壟斷權之後,用戶面臨的可能是一個非常危險的狀況,反壟斷的重要性對於任何行業、任何企業都一樣,哪怕是打著「不作惡」旗號的Google。
4. 如何用JS實現:通過瀏覽器獲得用戶地理位置,計算預置地理位置與用戶地理位置之間的距離,返回數字文本
其實有了 Haversine 公式,兩點坐標之後就很簡單了。你提供的上海范圍太大,且沒有坐標,下面例子以上海虹橋機場為參考(緯度:31.2,經度:121.4)。
要從地名獲得它的經緯度應該需要有一個龐大的資料庫,這點沒有仔細研究過。谷歌地圖應該會提供此類的 API。你可以網路一下"經緯度查詢",有很多網站提供此功能。
測試的時候最好用 IE9 或 Opera 高版本,Firefox 和 Safari 有時會獲取不到地理位置,Chrome 會自動屏蔽本地文件。
<script type="text/javascript">
// Haversine 公式
function getDistanceFromLatLonInKm(lat1, lon1, lat2, lon2) {
var R = 6371;
var dLat = deg2rad(lat2 - lat1);
var dLon = deg2rad(lon2 - lon1);
var a =
Math.sin(dLat / 2) * Math.sin(dLat / 2) +
Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) *
Math.sin(dLon / 2) * Math.sin(dLon / 2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
var d = R * c;
return d;
}
function deg2rad(deg) {
return deg * (Math.PI / 180);
}
// 上海虹橋機場經緯度
var lat = 31.2, lon = 121.4;
// 嘗試獲取地理位置
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(pos) {
var d = getDistanceFromLatLonInKm(
pos.coords.latitude,
pos.coords.longitude,
lat, lon).toFixed(2);
alert("當前位置距上海虹橋機場:" + d + "公里");
});
}
else {
alert("瀏覽器不支持 geolocation");
}
</script>