2013-08-16 2 views
1

Я разрабатываю расширение для Safari 6, и я хочу установить некоторые значения по умолчанию для моих настроек. Эти значения по умолчанию зависят от window.navigator.language, поэтому установка их в Settings.plist не является трюком - мне нужно запустить некоторый JS-код для их установки.Расширение Safari: событие «on install»?

Очевидно, что этот код должен запускаться только сразу после установки. И он не должен запускаться после простого повторного включения расширения.

Есть ли «официальное» событие, которое я могу прикрепить к функции с addEventlistener? Или мне действительно нужен trick with setting a helper variable?

ответ

2

Нет официальных событий, которые я знаю. Но это довольно легко сделать что-то подобное в вашей глобальной странице:

if (!safari.extension.settings.hasRun) { 
    safari.extension.settings.hasRun = true; 
    safari.extension.settings.lang = window.navigator.language; 
} 
+0

Да, это [упомянутый трюк с переменными хелперами] (http://stackoverflow.com/questions/9868985/safari-extension-first -run-and-updates), ОК. BTW: реквизит для [вашего учебника] (http://macinchem.org/reviews/safari-extensions.php) :) –

Смежные вопросы