如何在Cesium中更改光标?

时间:2016-08-08 20:03:08

标签: javascript extjs cesium webgl-earth

我试图在鼠标悬停在某些铯对象上时更改光标。我使用鼠标而不是监听器,那部分正在工作(通过使用debugger;找到)。但是当我将鼠标悬停在它上面时(并且根据Firefox调试器更改了变量名称),光标保持不变。谷歌和Cesium的API文档没有提供任何帮助。知道我做错了什么吗?

var pickedObject = scene.pick(movement.endPosition);
if(Cesium.defined(pickedObject) && (pickedObject.id)) {
    document.body.style.cursor = 'pointer';
    debugger;
} else {
    document.body.style.cursor = 'default';
    debugger;
}

在此代码运行之前,Firefox会说document.body.style.cursor = ""。 在第一个debugger;,它说document.body.style.cursor="pointer"。 在第二个debugger;,它说document.body.style.cursor="default"

2 个答案:

答案 0 :(得分:2)

将第三行更改为以下内容会将光标更改为指针:

Ext.get(scope.id).setStyle('cursor', 'pointer');

将第六行更改为以下内容将其更改回来:

Ext.get(scope.id).setStyle('cursor', 'grab');

答案 1 :(得分:0)

不使用任何外部库,它将是这样的:

viewer._container.style.cursor = "crosshair";

或重置为默认值

viewer._container.style.cursor = "default";