我正在使用带有 Extjs 4 的 Google 地球插件。虽然我认为我遗漏了一些小东西。
我的谷歌地球插件有很多创建的地标。
控制面板看起来像这样。
// Create control panel
var controlPanel = new Ext.Panel({
title: 'Control Panel',
width: 280,
height: this.height,
border: true,
collapsible: false,
renderTo: 'westPanel',
layout: 'accordion',
layoutConfig: {
animate: true
},
defaultType: 'panel',
defaults: {
bodyStyle: 'padding: 10px'
}
});
创建一个文件夹。
var folder = this.earth.createFolder("PLaceMark Name");
placemark = this.earth.createPlacemark('');
var point = this.earth.createPoint('');
point.setLatitude(my_lat);
point.setLongitude(my_long);
placemark.setGeometry(point);
folder.getFeatures().appendChild(placemark);
最后,我使文件夹可见。
this.earth.getFeatures().appendChild(folder);
folder.setVisibility(true);
// Add panels
controlPanel.add(earthPanel.getLayersPanel());
controlPanel.add(earthPanel.getOptionsPanel());
controlPanel.add(earthPanel.getFoldersPanel());
controlPanel.doLayout();
我确实可以看到地图上的所有地标,但在面板上没有选项可以使该文件夹可见/隐藏。
我要做的就是在面板上创建一个选项,我可以在其中隐藏我的地标或用复选框显示它们。
也许有一种方法可以构建带有复选框的自定义面板并在我选中/取消选中该框时执行 JavaScript。
任何建议将不胜感激。