Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | 1x 1x 1x 2x 2x 2x 2x 1x 1x 1x 1x 1x 1x | /**
* 检测浏览器核心
*
* 支持的类型检测
* - trident
* - presto
* - webkit
* - gecko
* @method env/core
* @returns {Object} UA 检查结果
* @example
* var $core = require('@spore-ui/kit/packages/env/core');
* console.info($core().webkit);
* console.info($core.detect());
*/
var $assign = require('../obj/assign');
var $uaMatch = require('./uaMatch');
var testers = {
trident: (/trident/i),
presto: (/presto/i),
webkit: (/webkit/i),
gecko: function (ua) {
return ua.indexOf('gecko') > -1 && ua.indexOf('khtml') === -1;
},
};
function detect(options, checkers) {
var conf = $assign({
ua: '',
}, options);
$assign(testers, checkers);
return $uaMatch(testers, conf.ua, conf);
}
var result = null;
function core() {
Eif (!result) {
result = detect();
}
return result;
}
core.detect = detect;
module.exports = core;
|