Merge pull request #5049 from marcjansen/assume-getComputedStyle
Supported browsers all have getComputedStyle
This commit is contained in:
@@ -36,31 +36,29 @@ ol.dom.canUseCssTransform = (function() {
|
|||||||
if (canUseCssTransform === undefined) {
|
if (canUseCssTransform === undefined) {
|
||||||
goog.asserts.assert(document.body,
|
goog.asserts.assert(document.body,
|
||||||
'document.body should not be null');
|
'document.body should not be null');
|
||||||
if (!goog.global.getComputedStyle) {
|
goog.asserts.assert(goog.global.getComputedStyle,
|
||||||
// this browser is ancient
|
'getComputedStyle is required (unsupported browser?)');
|
||||||
canUseCssTransform = false;
|
|
||||||
} else {
|
|
||||||
var el = document.createElement('P'),
|
|
||||||
has2d,
|
|
||||||
transforms = {
|
|
||||||
'webkitTransform': '-webkit-transform',
|
|
||||||
'OTransform': '-o-transform',
|
|
||||||
'msTransform': '-ms-transform',
|
|
||||||
'MozTransform': '-moz-transform',
|
|
||||||
'transform': 'transform'
|
|
||||||
};
|
|
||||||
document.body.appendChild(el);
|
|
||||||
for (var t in transforms) {
|
|
||||||
if (t in el.style) {
|
|
||||||
el.style[t] = 'translate(1px,1px)';
|
|
||||||
has2d = goog.global.getComputedStyle(el).getPropertyValue(
|
|
||||||
transforms[t]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
document.body.removeChild(el);
|
|
||||||
|
|
||||||
canUseCssTransform = (has2d && has2d !== 'none');
|
var el = document.createElement('P'),
|
||||||
|
has2d,
|
||||||
|
transforms = {
|
||||||
|
'webkitTransform': '-webkit-transform',
|
||||||
|
'OTransform': '-o-transform',
|
||||||
|
'msTransform': '-ms-transform',
|
||||||
|
'MozTransform': '-moz-transform',
|
||||||
|
'transform': 'transform'
|
||||||
|
};
|
||||||
|
document.body.appendChild(el);
|
||||||
|
for (var t in transforms) {
|
||||||
|
if (t in el.style) {
|
||||||
|
el.style[t] = 'translate(1px,1px)';
|
||||||
|
has2d = goog.global.getComputedStyle(el).getPropertyValue(
|
||||||
|
transforms[t]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
document.body.removeChild(el);
|
||||||
|
|
||||||
|
canUseCssTransform = (has2d && has2d !== 'none');
|
||||||
}
|
}
|
||||||
return canUseCssTransform;
|
return canUseCssTransform;
|
||||||
};
|
};
|
||||||
@@ -79,31 +77,29 @@ ol.dom.canUseCssTransform3D = (function() {
|
|||||||
if (canUseCssTransform3D === undefined) {
|
if (canUseCssTransform3D === undefined) {
|
||||||
goog.asserts.assert(document.body,
|
goog.asserts.assert(document.body,
|
||||||
'document.body should not be null');
|
'document.body should not be null');
|
||||||
if (!goog.global.getComputedStyle) {
|
goog.asserts.assert(goog.global.getComputedStyle,
|
||||||
// this browser is ancient
|
'getComputedStyle is required (unsupported browser?)');
|
||||||
canUseCssTransform3D = false;
|
|
||||||
} else {
|
|
||||||
var el = document.createElement('P'),
|
|
||||||
has3d,
|
|
||||||
transforms = {
|
|
||||||
'webkitTransform': '-webkit-transform',
|
|
||||||
'OTransform': '-o-transform',
|
|
||||||
'msTransform': '-ms-transform',
|
|
||||||
'MozTransform': '-moz-transform',
|
|
||||||
'transform': 'transform'
|
|
||||||
};
|
|
||||||
document.body.appendChild(el);
|
|
||||||
for (var t in transforms) {
|
|
||||||
if (t in el.style) {
|
|
||||||
el.style[t] = 'translate3d(1px,1px,1px)';
|
|
||||||
has3d = goog.global.getComputedStyle(el).getPropertyValue(
|
|
||||||
transforms[t]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
document.body.removeChild(el);
|
|
||||||
|
|
||||||
canUseCssTransform3D = (has3d && has3d !== 'none');
|
var el = document.createElement('P'),
|
||||||
|
has3d,
|
||||||
|
transforms = {
|
||||||
|
'webkitTransform': '-webkit-transform',
|
||||||
|
'OTransform': '-o-transform',
|
||||||
|
'msTransform': '-ms-transform',
|
||||||
|
'MozTransform': '-moz-transform',
|
||||||
|
'transform': 'transform'
|
||||||
|
};
|
||||||
|
document.body.appendChild(el);
|
||||||
|
for (var t in transforms) {
|
||||||
|
if (t in el.style) {
|
||||||
|
el.style[t] = 'translate3d(1px,1px,1px)';
|
||||||
|
has3d = goog.global.getComputedStyle(el).getPropertyValue(
|
||||||
|
transforms[t]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
document.body.removeChild(el);
|
||||||
|
|
||||||
|
canUseCssTransform3D = (has3d && has3d !== 'none');
|
||||||
}
|
}
|
||||||
return canUseCssTransform3D;
|
return canUseCssTransform3D;
|
||||||
};
|
};
|
||||||
@@ -196,7 +192,7 @@ ol.dom.transformElement2D = function(element, transform, opt_precision) {
|
|||||||
*/
|
*/
|
||||||
ol.dom.outerWidth = function(element) {
|
ol.dom.outerWidth = function(element) {
|
||||||
var width = element.offsetWidth;
|
var width = element.offsetWidth;
|
||||||
var style = element.currentStyle || window.getComputedStyle(element);
|
var style = element.currentStyle || goog.global.getComputedStyle(element);
|
||||||
width += parseInt(style.marginLeft, 10) + parseInt(style.marginRight, 10);
|
width += parseInt(style.marginLeft, 10) + parseInt(style.marginRight, 10);
|
||||||
|
|
||||||
return width;
|
return width;
|
||||||
@@ -212,7 +208,7 @@ ol.dom.outerWidth = function(element) {
|
|||||||
*/
|
*/
|
||||||
ol.dom.outerHeight = function(element) {
|
ol.dom.outerHeight = function(element) {
|
||||||
var height = element.offsetHeight;
|
var height = element.offsetHeight;
|
||||||
var style = element.currentStyle || window.getComputedStyle(element);
|
var style = element.currentStyle || goog.global.getComputedStyle(element);
|
||||||
height += parseInt(style.marginTop, 10) + parseInt(style.marginBottom, 10);
|
height += parseInt(style.marginTop, 10) + parseInt(style.marginBottom, 10);
|
||||||
|
|
||||||
return height;
|
return height;
|
||||||
|
|||||||
Reference in New Issue
Block a user