1

Googleマップレイヤーを使用してOpenLayers内でGoogle Adsenseを使用するにはどうすればよいですか?

Google マップ (v2) マップ内でアドセンスを使用するコード:

map = new GMap2(document.getElementById("Gmap"));
adsManager = new GAdsManager(
    map, 
    "ca-pub-xxxxxxxxxxxxxxxx", 
    {
        maxAdsOnMap : 4,
        style: 'adunit'
    }
);
adsManager.enable();

## The HTML:
<div id="Gmap"></div>

Google マップ v2 の結果広告

openlayers で Google マップを表示するコード:

map = new OpenLayers.Map("olmap")
var gmap = new OpenLayers.Layer.Google("Google Streets", {numZoomLevels: 20});
map.addLayers([gmap]);

## The HTML:
<div id="olmap"></div>

openlayers内でGoogleマップオブジェクトを取得する方法はありますか? 次に、最初のコードを使用して広告を追加します。

4

1 に答える 1

0

見つけた!Openlayersのソースコードとfirebugを見る:)

このコードを持っていると

map = new OpenLayers.Map("olmap")
var gmap = new OpenLayers.Layer.Google("Google Streets", {numZoomLevels: 20});
map.addLayers([osm, gmap]);

## The HTML:
<div id="olmap"></div>

この js を使用して、Google マップ オブジェクトを参照できます。

map.baseLayer.mapObject

したがって、これによると次のようになります

## html
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=adsense&sensor=true_or_false"></script>
<div id="olmap"></div>

## js
map = new OpenLayers.Map("olmap")
var gmap = new OpenLayers.Layer.Google("Google Streets", {numZoomLevels: 20});
map.addLayers([gmap]);

var adUnitDiv = document.createElement('div');
var adUnitOptions = {
  format: google.maps.adsense.AdFormat.HALF_BANNER,
  position: google.maps.ControlPosition.TOP,
  map: map.baseLayer.mapObject,
  visible: true,
  publisherId: 'YOUR_PUBLISHER_ID'
}
adUnit = new google.maps.adsense.AdUnit(adUnitDiv, adUnitOptions);

(未検証)

于 2012-07-11T19:33:03.010 に答える