基本上我有一个Safari扩展,我想向Safari 6提供与Safari 5.1略有不同的代码…
有没有一种方法可以从扩展中检测浏览器版本?
如果您的Safari 6特定代码依赖于Safari 6中的新API,则应使用功能检测来确定是否可以使用该功能。例如,如果你想解决Safari6的新阅读器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];
但是特征检测总是优选的。