0

基本上我有一个 Safari 扩展,我想向 Safari 6 提供与我用于 Safari 5.1 的代码略有不同的代码......

有没有办法可以从扩展中检测浏览器版本?

4

1 回答 1

3

如果您的 Safari 6 特定代码依赖于 Safari 6 中的新 API,您应该使用功能检测来确定您是否可以使用该功能。例如,如果您想处理 Safari 6 的新 Reader API:

var thisTab = safari.application.activeBrowserWindow.activeTab;

if (thisTab.reader) {
    // do something with Reader
} else {
    // do something else
}

如果功能检测对您不起作用,您可以使用window.navigator.appVersion来确定 Safari 的主要版本。例如:

var majorVersion = /Version\/(\d+\.?\d*)/.exec(navigator.appVersion)[1];

但是特征检测总是更可取的。

于 2012-08-19T21:42:29.083 回答