Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dvhb/badbrowser
The library checks user client and shows a warning if the browser version does not meet minimal requirements.
https://github.com/dvhb/badbrowser
badbrowser browser javascript qa
Last synced: about 2 months ago
JSON representation
The library checks user client and shows a warning if the browser version does not meet minimal requirements.
- Host: GitHub
- URL: https://github.com/dvhb/badbrowser
- Owner: dvhb
- License: mit
- Created: 2015-07-27T08:59:09.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2020-08-27T06:05:17.000Z (over 4 years ago)
- Last Synced: 2024-10-11T02:39:59.310Z (2 months ago)
- Topics: badbrowser, browser, javascript, qa
- Language: JavaScript
- Homepage: https://dvhb.github.io/badbrowser/
- Size: 516 KB
- Stars: 49
- Watchers: 23
- Forks: 13
- Open Issues: 2
-
Metadata Files:
- Readme: README.MD
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# @dvhb/badbrowser [![Build Status](https://travis-ci.org/dvhb/badbrowser.svg?branch=master)](https://travis-ci.org/dvhb/badbrowser)
## Install
```
npm i @dvhb/badbrowser
```## Demo
http://dvhb.github.io/badbrowser/## Using
```js
import badbrowser from '@dvhb/badbrowser';new badbrowser();
```You can put html for custom alert windows in `/alerts/` with this pattern:
```
alerts/
ru.html
en.html
...
```You may take an example of html code for your custom alert from `/dist/alerts/en.html`
### Example
Desktop
* Microsoft Edge, 12+;
* Mozilla Firefox, 37+;
* Google Chrome, 41+;
* Opera, 28+;
* Apple Safari, 8+;
* Yandex Browser, 15+.Mobile
* Mobile Safari, 7+
* Android Browser, 4+
* Chrome Mobile, 41+;
* Internet Explorer Mobile, 11+;```js
new badbrowser({
// Min version of browser that will be supported
supported: {
msedge: '12',
firefox: '37',
chrome: '41',
opera: '28',
safari: '8',
yandexbrowser: '15',
safari_mobile: '7',
android: '4',
chrome_mobile: '41',
msie_mobile: '11'
},// path to your html alerts
// could be a function:
// function (ua) {
// return '/alerts/' + lang + '.html'
// }
path: '/alerts/en.html',
// if `false` then user's choice will be saved in the cookies
// and alert window will not be showen next time
ignoreChoice: false
})
```Instead of specifying *supported* property you can specify *unsupported* browsers:
```js
new badbrowser({
unsupported: {
// the same as supported.chrome = '40'
chrome: '39',
// the same as supported.firefox = '34'
firefox: '33',
// will show alert for any mobile browser
mobile: true
}
})
```Also you can get the flag that indicates compatibility of a current browser
```js
let bb = new badbrowser({
unsupported: {
// the same as supported.chrome = '40'
chrome: '39',
// the same as supported.firefox = '34'
firefox: '33',
// will show alert for any mobile browser
mobile: true
}
})let isSupported = bb.check();
```
You can manually control warning window: \
Shows warning if it is not added yet and removes warning if it exists.
```js
bb.toggleWarning();
```
## Default settings object
```js
{
template: null,
path: false,
fullscreen: true,
ignoreChoice: false,
logo: false,
supported: {
chrome: '42',
chromium: '42',
firefox: '38',
msie: '9',
msedge: '12',
opera: '26',
safari: '6',
yandexbrowser: '15',
safari_mobile: '7',
android: '4',
mobile: true
}
}
```## Browser flags
* `chrome`
* `firefox`
* `msie`
* `msedge`
* `safari`
* `yandexbrowser`
* `android`
* `ios`
* `opera`
* `samsungBrowser`
* `phantom`
* `blackberry`
* `webos`
* `silk`
* `bada`
* `tizen`
* `seamonkey`
* `sailfish`
* `ucbrowser`
* `qupzilla`
* `vivaldi`
* `sleipnir`
* `kMeleon`# LICENSE
[MIT License](./LICENSE) © [dvhb](https://dvhb.com/)