标签 Google 下的文章

Google Maps JavaScript API v3 dblclick双击事件冒泡

After registering e.g. a dblclick handler on a Rectangle, how do I 
prevent that event from triggering another handler as well (e.g. map 
zoom)? 

google.maps.event.addListener(area, 'dblclick', function(event) { 
// do something, but don't zoom in! 
}); 

在地图上双击后会触发zoom in。

那么如何停止触发zoom in呢,可以让MapOptions对象的disableDoubleClickZoom设置为true。

但是我们有时候需要双击zoom in,有时候又不需要呢?这个问题已经提交到了gmaps-api-issues的issues里面,不过我的方法是在函数体内写一段错误的js代码。比如某一个不存在的对象的方法。something.method();

gmail和ggreader的新UI不错。

google maps api 报错:OVER_QUERY_LIMIT

google maps api 报错:OVER_QUERY_LIMIT

如果你在for循环里面geocode那我劝你还是算了,不要以为google给你提供了免费的/bandwidth/hosting,不要以为google服务器多如牛毛。但是谁受得鸟你这种粗暴的for循环呢?

参考geocoding usage limits 可知限制如下:

Use of the Google Geocoding API is subject to a query limit of 2,500 geolocation requests per day. (User of Google Maps API Premier may perform up to 100,000 requests per day.) This limit is enforced to prevent abuse and/or repurposing of the Geocoding API, and this limit may be changed in the future without notice. Additionally, we enforce a request rate limit to prevent abuse of the service. If you exceed the 24-hour limit or otherwise abuse the service, the Geocoding API may stop working for you temporarily. If you continue to exceed this limit, your access to the Geocoding API may be blocked.

同时参考:geocoding政策,配额限制

解决方法,我们可以将geocode出来的正确的latitude和longtitude都存到我们自己的数据库,下次就直接用google.map.Marker的position指定latitude和longtitude实现。

  • fetch the latitude+longitude, using the geocoder, when a location is created
  • store those in your database, alongside the address
  • and use those stored latitude+longitude when you want to display the map.

或者试试500ms geocode一个:

You can delay 5 seconds between every 10 calls, subject to change. But your page will load much faster if you use the HTTP geocoder before serving your pages.

google受牵连?

总说周知google.cn 自动跳转到google.com.uk 同时不带censor,gfw当然理所当然的ban掉这些关键字。 但是今天下午访问google.com.uk / google.com搜索一般的关键字都会被重置。 比如搜索“test”,网址

http://www.google.com.hk/search?hl=zh-CN&source=hp&q=test&meta=&aq=f&aqi=g10&aql=&oq=&gs_rfai=

http://www.google.com/search?hl=en&source=hp&q=test&aq=f&aqi=g10&aql=&oq=&gs_rfai=

都被重置了,经过测试搜索任何关键字,更不用那些敏感词,都会被重置。 但是通过IE 8搜索栏或者Firefox的搜索栏非敏感词都能够被搜索,还是以搜索“test”为例子 Firefox搜索url

http://www.google.com/search?q=test&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a

IE搜索url

http://www.google.com.hk/search?q=test&rls=com.microsoft:zh-cn:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7

都能正常访问。 到豆瓣google小组,发现一个帖子说这次封了.google和rfa关键字,而无辜的Google搜索结果页也确实出现了rfa关键字,难道你没有看到?恩,红色的gs_rfai参数就是了。 那么rfa是啥呢?请使用和谐百度获取答案

google受牵连?

解决方案

  1. 用浏览器的搜索工具栏
  2. 去掉gs_rfai参数。在“搜索设置”中“查询建议” 勾选“不在搜索框内提供查询建议。”

enter image description here

  1. Google Ajax Search API,因为可以通过https搜索,所以还能搜索不河蟹的词。如果你没有编程的爱好,那可以直接使用这个API的Hello World

  2. Gmail实验室里面的启动“Google搜索”,

enter image description here

原理和方案2一样。

参考

总结

这个事情说明了受牵连了也无处诉苦,因为我是牛逼闪闪的GFW。