0

我正在尝试找出一种在某些比例下禁用 Sketch 小部件的方法。

目前我有可以完全添加或删除小部件的工作代码,但这不符合我的要求。

我看到 Sketch 小部件有一个“状态”属性,但它是只读的,我找不到影响状态的方法或其他属性。

我需要能够禁用整个小部件或至少禁用所有绘图/编辑工具。

4

2 回答 2

0

禁用小部件按钮的一种方法是将pointer-eventsstyle 属性设置为none.

所以,假设您的小部件变量是sketch,那么

const buttons = sketch.container.getElementsByTagName("button");
for (let i = 0; i < buttons.length; i++) {
  buttons[i].classList.add("no-click");
}

就在哪里no-click

.no-click {
  pointer-events: none !important;
}

我不确定你的实现,但我认为你可以通过这个片段得到一个想法。

在调用之前加载小部件很重要getElementsByTagName,否则您将得到 0 结果。

于 2020-10-12T09:41:28.693 回答
0

您不能禁用草图工具,因为用户已经开始在地图上绘制几何图形。

一旦用户在地图上激活了绘制工具,您就可以控制地图的缩放行为;我的意思是不允许用户从某个地图比例缩小(如果工具处于活动状态)。

于 2020-11-11T12:49:20.697 回答