2

我正在设置一个网页,用户可以从中安装我们的扩展程序。当用户设法安装它时,我想说“恭喜”。

我找不到任何可以听的东西来检测这一点。安装扩展程序时,Safari 是否会触发任何消息?

4

1 回答 1

2

我之前做过类似的事情,只是将代码放在全局页面中,并使用隐藏的设置项来确保它只在第一次运行:

if (!safari.extension.settings.hasRun) {
    safari.extension.settings.hasRun = true;
    alert('Congratulations!');
}

需要注意的一件事是,任何注入的脚本只会在新加载的页面上或在刷新后注入。所以使用上面的代码向注入的脚本发送消息来修改当前打开的页面的内容有点棘手。您要么必须强制刷新,要么只打开一个带有欢迎消息的选项卡:

if (!safari.extension.settings.hasRun) {
    safari.extension.settings.hasRun = true;
    safari.application.openBrowserWindow();
    safari.application.activeBrowserWindow.activeTab.url  = "http://www.example.com/welcome";
}
于 2013-03-29T19:39:42.863 回答