我正在使用Cesium并尝试使用一个按钮,只要按下该按钮即可更改图像。 Cesium在javascript上运行,但是只要包含映像文件名称的变量发生更改,映像就不会更改。

    var iName = "HeatMap"; var count=1;
name=iName.concat(count.toString());
var viewer = new Cesium.CesiumWidget('cesiumContainer');
var layers = viewer.scene.imageryLayers;

//Cesium Active Window
layers.addImageryProvider(new Cesium.SingleTileImageryProvider({
    url : 'images/'.concat(name.concat('.png')),
    rectangle : Cesium.Rectangle.fromDegrees(-180.0, -90.0, 180.0, 90.0),
    opacity:.3
}));

function buttonPressCount()
{
    name='HeatMap';
    count=count+1;
    name = name.concat(count.toString());
    document.getElementById('counter').innerHTML = name;
}


document.getElementById仅用于调试目的,因此我知道名称实际上已更改。

最佳答案

在我看来,您应该拨打类似

layers.addImageryProvider(new Cesium.SingleTileImageryProvider({
   url : 'images/'.concat(name.concat('.png')),
   rectangle : Cesium.Rectangle.fromDegrees(-180.0, -90.0, 180.0, 90.0),
   opacity:.3}));


在功能buttonPressCount中。

关于javascript - Javascript未更新img,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40248809/

10-11 11:14