我无法在脚本中调用菜单项。例如:

app.menuActions.item("$ID/Override All Master Page Items").invoke;
app.menuActions.item("$Override All Master Page Items").invoke;
app.menuActions.itemByID(6164).invoke;

app.menuActions.item("$ID/Select All").invoke;
app.menuActions.item("Select All").invoke;
app.menuActions.itemByID(276).invoke;

alert("Done");


除了在末尾显示警报外,不执行任何操作。

我检查了ID是否有效且操作名称是否唯一(至少对于“覆盖所有母版页项目”而言)具有:

myMenuActions = app.menuActions.itemByName("Override All Master Page Items").getElements();
for (var i = 0; i < myMenuActions.length; i++) {
          alert(myMenuActions[i].area + " " + myMenuActions[i].id);
}


我还阅读了InDesign中的Kaysan's guide to scripting menu items,但无济于事。

知道发生了什么事吗? (我希望通过与语言环境无关的名称而不是ID来引用菜单项,但在此阶段,我会满足于任何条件。)

我正在Windows 10上运行InDesign CC 2014,并且正在使用Notepad ++编辑脚本,而不是Adobe ExtendScript环境,以防万一。提前致谢!

最佳答案

您需要将()添加到.invoke,因为这是一种方法。

因此应该是:

app.menuActions.item("$ID/Override All Master Page Items").invoke()

希望能有所帮助

约翰

10-08 15:50