Library rewrite

This commit is contained in:
Niklas von Hertzen
2017-07-29 10:07:42 +08:00
committed by Niklas von Hertzen
parent 83e9b85e1e
commit 8a6fb5f733
70 changed files with 2521 additions and 3219 deletions

34
src/Feature.js Normal file
View File

@@ -0,0 +1,34 @@
const testRangeBounds = document => {
const TEST_HEIGHT = 123;
if (document.createRange) {
const range = document.createRange();
if (range.getBoundingClientRect) {
const testElement = document.createElement('boundtest');
testElement.style.height = `${TEST_HEIGHT}px`;
testElement.style.display = 'block';
document.body.appendChild(testElement);
range.selectNode(testElement);
const rangeBounds = range.getBoundingClientRect();
const rangeHeight = Math.round(rangeBounds.height);
document.body.removeChild(testElement);
if (rangeHeight === TEST_HEIGHT) {
return true;
}
}
}
return false;
};
const FEATURES = {
get SUPPORT_RANGE_BOUNDS() {
'use strict';
const value = testRangeBounds(document);
Object.defineProperty(FEATURES, 'SUPPORT_RANGE_BOUNDS', {value});
return value;
}
};
export default FEATURES;