我在 InDesign 中运行了一个(非常大的)脚本,该脚本有一次将库资源放置到页面上,然后将其移动到某个图层。该脚本在我们这里的所有计算机上都可以正常运行,但前提是当时在 InDesign 中没有打开其他文档。
如果另一个文档是打开的,那么当脚本试图将放置的资产移动到另一个层时会出现错误:
JavaScript 错误!
错误号:54 错误字符串:未捕获的 JavaScript 异常:第 2651 行出现错误 设置属性“itemLayer”的值无效。预期层,但接收层。
注意粗体部分。它收到了它所期望的东西,所以它发脾气了?这对我来说毫无意义。作为记录,这是它引用的代码行:
curAsset[0].itemLayer = document.layers.item("Art Work (max imprint)");
并且,为了记录,curAsset[0]
是从库中获取并已放置在文档中的资产对象。并且document
是已经分配给当前打开的文档的变量。
我的工作理论是,在 InDesign 中打开的其他文档会导致此错误,因为这是迄今为止我能够做出的唯一关联,但我不知道如何。该脚本已经有变量document
,它仅引用打开的文档之一。脚本中的其他所有内容都运行良好,除了这一行(到目前为止)。