[CS2 JS] document.pages.nextItem() - не работает

Статус
Закрыто для дальнейших ответов.

took

Топикстартер
15 лет на форуме
Сообщения
388
Реакции
14
PHP:
var pDoc = activeDocument;
cPage = pDoc.pages.firstItem()
cPage = pDoc.pages.nextItem(cPage)
alert(cPage.appliedMaster.namePrefix)

вот такая конструкция, на alertе вылетает - Object invalid
я так понимаю, он первую страницу нормально определяет, а вот как правильно определить следующую страницу от заданной???
Может я чего не так делаю
 

vbatushev

20 лет на форуме
Сообщения
2 242
Реакции
1 227
Ответ: [CS2 JS] document.pages.nextItem() - не работает

Почему cPage = pDoc.pages.nextItem(cPage)???
Там аргументов нету.
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
Ответ: [CS2 JS] document.pages.nextItem() - не работает

А все равно не работает - это ошибка в объектной модели. Решение я знаю, но вам не скажу :)
 

took

Топикстартер
15 лет на форуме
Сообщения
388
Реакции
14
Ответ: [CS2 JS] document.pages.nextItem() - не работает

vbatushev сказал(а):
Почему cPage = pDoc.pages.nextItem(cPage)???
Там аргументов нету.

в аттаче выдержка из референса
вроде как есть параметр.

2 Oleg Butrin
можно конечно и через счетчик обратиться к .pages
но через nextItem() вроде изящнее и проще, а как еще можно-то? а?
Олег? Может тоже енотами? -)
 

Вложения

  • js-ref.gif
    js-ref.gif
    2 КБ · Просм.: 805

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
Ответ: [CS2 JS] document.pages.nextItem() - не работает

Изящнее, но не проще.
Берешь и ручками пишешь соответствующие функции previousPage(Param) и nextPage(Param), где Param - это соответствующая страница. Уж выбрать из списка страниц сможешь предыдущую и следующую?

PS. Создаду и продаду ряд модулей, расширяющих возможности встроенного языку :)
 

took

Топикстартер
15 лет на форуме
Сообщения
388
Реакции
14
Ответ: [CS2 JS] document.pages.nextItem() - не работает

Oleg Butrin сказал(а):
Уж выбрать из списка страниц сможешь предыдущую и следующую?

Типа Pop'ом?...
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
Ответ: [CS2 JS] document.pages.nextItem() - не работает

А без попы? Просто взять и ретурнить предыдущую из массива?
 

took

Топикстартер
15 лет на форуме
Сообщения
388
Реакции
14
Ответ: [CS2 JS] document.pages.nextItem() - не работает

Oleg Butrin сказал(а):
А без попы? Просто взять и ретурнить предыдущую из массива?

А как получить индекс элемента массива?
 

MT

15 лет на форуме
Сообщения
246
Реакции
93
Ответ: [CS2 JS] document.pages.nextItem() - не работает

Стало интересно, написал то же на VBS:

Set myInDesign = CreateObject("InDesign.Application.CS2")
Set myDocument = myInDesign.ActiveDocument
Set myPages = myDocument.Pages
Set myPage = myPages.Item(1)
Set myPage = myPages.NextItem(myPage)

Оно работает.
 
Статус
Закрыто для дальнейших ответов.