![]() |
1
6
Safari5.1有几个新的扩展事件,包括一个“activate”事件,当窗口或选项卡被聚焦时触发。 https://developer.apple.com/documentation/safariextensions/safariactivateevent |
|
2
4
这就是你要找的活动。我不确定,但我认为它是扩展api的新添加。你可以放进去
|
![]() |
3
2
我同意@imiaou的回答:从苹果的文档来看,似乎没有办法做到这一点:(。
我对经常轮询浏览器很不满意,但在苹果添加对这些标签事件的支持之前,我看不到其他解决方法。如果您的扩展可以接受相对宽松的tab开关事件触发延迟,那么这可能是目前一个合理的解决方法(1.5秒)。最大延迟对于我的扩展来说是可以接受的,而且它不会让浏览器变慢)。 |
|
4
0
@Galt的想法是在注入的JavaScript中添加一个事件监听器,并将其添加到
您要查找的事件处理程序名为
在注入的代码中:
然后,可以使用与扩展相关的数据更新扩展的UI
|
![]() |
5
0
我发现这个方法比焦点事件更有效,它可以在后台页面进行管理:
|
![]() |
6
0
此代码将有助于跟踪URL中的更改:- 编写此代码注入.js,在边函数中
|
|
7
-1
|
![]() |
8
-1
与chrome不同的是,chrome为窗口和选项卡更改等事件提供了一个特殊的API,您仍然可以通过safari扩展来实现。 您只需让注入的javascript为您想要的事件设置事件侦听器。
注入.js:
|