2

Я пытаюсь создать сценарий, сохраненный как пакет приложений, который обрабатывает настраиваемые схемы URL-адресов.Javascript для пользовательского URL-адреса автоматизации в Yosemite

Я знаю, как справиться с этим в Applescript:

on open location theURLtext 
    do things here 
end open location 

Но я не знаю, как сделать это с JavaScript, там не так много документации о JS для автоматизации еще.

Благодарим вас и извините, мой плохой английский.

ответ

0

Эквивалент обработчику открытого местоположения заключается в определении функции с определенным именем.

function onOpenLocation (theUrl) { 
    Do something here. 
} 

The release notes for JavaScript for Automation конкретно не упоминается этот обработчик, но это то, что он должен быть назван на основе соглашения об именовании для перевода AppleScript в АПБ.

+0

Я пробовал, но не работает для меня. Ты это пробовал? – gromik

0

Ну, openLocation() был бы более совместим с именами других обработчиков, но я не думаю, что они его уже реализовали.

Вы можете, однако, использовать JavaScript для гораздо лучше функций обработки URL Automation путем просто передать управление непосредственно другому сценарию в .app пачке:

on open location strURL 
    run script (path to resource "jsHandler.scpt" in directory "Scripts") with parameters {{|URL|:strURL}} 
end open location 

Где jsHandler.scpt начинает работать с чем-то вроде :

function run(argv) { 
    var strURL = argv[0].URL; 
    // ... 
}