Blame view

node_modules/caniuse-api/README.md 2.61 KB
aaac7fed   liuqimichale   add
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
  # caniuse-api [![Build Status](https://travis-ci.org/Nyalab/caniuse-api.svg?branch=master)](https://travis-ci.org/Nyalab/caniuse-api) [![Build status](https://ci.appveyor.com/api/projects/status/6j3na522bv3bxfa5/branch/master?svg=true)](https://ci.appveyor.com/project/MoOx/caniuse-api/branch/master)
  
  request the caniuse data to check browsers compatibilities
  
  ## Installation
  
  ```console
  $ npm install caniuse-api --save
  ```
  
  ## Usage
  
  ```js
  const caniuse = require('caniuse-api')
  
  caniuse.getSupport('border-radius')
  caniuse.isSupported('border-radius', 'ie 8, ie 9')
  caniuse.setBrowserScope('> 5%, last 1 version')
  caniuse.getSupport('border-radius')
  // ...
  ```
  
  ## API
  
  #### `caniuse.getSupport(feature)`
  
  _ask since which browsers versions a feature is available_
  
  * `y`: Since which browser version the feature is available
  * `n`: Up to which browser version the feature is unavailable
  * `a`: Up to which browser version the feature is partially supported
  * `X`: Up to which browser version the feature is prefixed
  
  ```js
  caniuse.getSupport('border-radius', true)
  /*
  [ safari: { y: 3.1, x: 4 },
    opera: { n: 10, y: 10.5 },
    ios_saf: { y: 3.2, x: 3.2 },
    ie_mob: { y: 10 },
    ie: { n: 8, y: 9 },
    firefox: { a: 2, x: 3.6, y: 3 },
    chrome: { y: 4, x: 4 },
    and_chr: { y: 39 } ]
  */
  ```
  
  #### `caniuse.isSupported(feature, browsers)`
  
  _ask if a feature is supported by some browsers_
  
  ```js
  caniuse.isSupported('border-radius', 'ie 8, ie 9') // false
  caniuse.isSupported('border-radius', 'ie 9') // true
  ```
  
  #### `caniuse.find(query)`
  
  _search for a caniuse feature name_
  
  Ex:
  
  ```js
  caniuse.find('radius') // ['border-radius']
  caniuse.find('nothingness') // []
  caniuse.find('css3')
  /*
  [ 'css3-boxsizing',
    'css3-colors',
    'css3-cursors-newer',
    'css3-cursors',
    'css3-tabsize' ]
  */
  ```
  
  #### `caniuse.getLatestStableBrowsers()`
  
  _get the current version for each browser_
  
  ```js
  caniuse.getLatestStableBrowsers()
  /*
  [ 'safari 8',
    'opera 26',
    'ios_saf 8.1',
    'ie_mob 11',
    'ie 11',
    'firefox 33',
    'chrome 39' ]
  */
  ```
  
  #### `caniuse.getBrowserScope()`
  
  _returns a list of browsers currently used for the scope of operations_
  
  ```js
  caniuse.getBrowserScope()
  /*
  [ 'safari',
    'opera',
    'op_mini',
    'ios_saf',
    'ie_mob',
    'ie',
    'firefox',
    'chrome',
    'android',
    'and_uc',
    'and_chr' ]
  */
  ```
  
  #### `caniuse.setBrowserScope(browserscope)`
  
  _if you do not like the default browser scope, you can set it globally by using this method_
  
  * browserscope should be a 'autoprefixer' formatted string
  
  ```js
  caniuse.setBrowserScope('> 5%, last 2 versions, Firefox ESR, Opera 12.1')
  ```
  
  
  ---
  
  ## [Changelog](CHANGELOG.md)
  
  ## [License](LICENSE)