functioninit(){varmap= newOpenLayers.Map("ch3_feature_markers");varlayer= newOpenLayers.Layer.OSM("OpenStreetMap");
map.addLayer(layer);
map.addControl(newOpenLayers.Control.LayerSwitcher());
map.setCenter(newOpenLayers.LonLat(0,0),2);varpointLayer= newOpenLayers.Layer.Vector("Features", {
projection:"EPSG:933913"});
map.addLayer(pointLayer);//新建一些随机的要素点
varpointFeatures=[];for(vari=0; i< 150; i++) {varpx=Math.random()* 360 - 180;varpy=Math.random()* 170 - 85;//将经纬度坐标转换为地图工程.
varlonlat= newOpenLayers.LonLat(px, py);
lonlat.transform(newOpenLayers.Projection("EPSG:4326"),newOpenLayers.Projection("EPSG:900913"));varpointGeometry= newOpenLayers.Geometry.Point(lonlat.lon, lonlat.lat);varpointFeature= newOpenLayers.Feature.Vector(pointGeometry);
pointFeatures.push(pointFeature);
}//将要素添加到图层中
pointLayer.addFeatures(pointFeatures);//当要素选中之后的事件控制
pointLayer.events.register("featureselected",null,function(event){varlayer=event.feature.layer;
event.feature.style={
fillColor:'#ff9900',
fillOpacity:0.7,
strokeColor:'#aaa',
pointRadius:12};
layer.drawFeature(event.feature);
});//当要素未选中之后的事件控制
pointLayer.events.register("featureunselected",null,function(event){varlayer=event.feature.layer;
event.feature.style= null;
event.feature.renderIntent= null;
layer.drawFeature(event.feature);
});//添加到触发矢量图层上的事件需要选择功能控制。
varselectControl= newOpenLayers.Control.SelectFeature(pointLayer);
map.addControl(selectControl);
selectControl.activate();
}