Style vendor prefixes should start with first char uppercase, js properties should be lower

This commit is contained in:
Gregers Gram Rygg
2012-06-23 22:46:43 +02:00
parent b9670a292b
commit 6d5f5c37df
2 changed files with 12 additions and 8 deletions

View File

@@ -1512,7 +1512,7 @@ OpenLayers.Util.getBrowserName = function() {
* Constant: VENDOR_PREFIXES
* {Array} A list of prefixes to test support for vendor-prefixed properties
*/
OpenLayers.Util.VENDOR_PREFIXES = ["", "O", "ms", "Moz", "webkit"];
OpenLayers.Util.VENDOR_PREFIXES = ["", "O", "ms", "Moz", "Webkit"];
/**
* Method: getVendorPrefixedCss
@@ -1530,8 +1530,7 @@ OpenLayers.Util.getVendorPrefixedCss = (function() {
function domToCss(prefixedDom) {
return prefixedDom.
replace(/([A-Z])/g, function(char) { return "-" + char.toLowerCase(); }).
replace(/^ms-/, "-ms-").
replace(/^webkit-/, "-webkit-");
replace(/^ms-/, "-ms-");
}
return function(property) {
@@ -1575,12 +1574,17 @@ OpenLayers.Util.getVendorPrefixedObj = (function() {
var tmpProp,
i = 0,
l = OpenLayers.Util.VENDOR_PREFIXES.length,
prefix;
prefix,
isStyleObj = (typeof obj.cssText !== "undefined");
cache[property] = null;
for(var i=0,l=OpenLayers.Util.VENDOR_PREFIXES.length; i<l; i++) {
prefix = OpenLayers.Util.VENDOR_PREFIXES[i];
if(prefix) {
if (!isStyleObj) {
// js properties should be lower-case
prefix = prefix.toLowerCase();
}
tmpProp = prefix + property.charAt(0).toUpperCase() + property.slice(1);
} else {
tmpProp = property;

View File

@@ -1165,8 +1165,8 @@
testDomPrefix("testMultiWord", "testMultiWord", "DOM vendor prefix - multiple words");
testCssPrefix("test-multi-word", "test-multi-word", "CSS vendor prefix - multiple words");
o.prop = "webkitMultiWord";
testDomPrefix("multiWord", "webkitMultiWord", "DOM vendor prefix - multiple words for WebKit");
o.prop = "WebkitMultiWord";
testDomPrefix("multiWord", "WebkitMultiWord", "DOM vendor prefix - multiple words for WebKit");
testCssPrefix("multi-word", "-webkit-multi-word", "CSS vendor prefix - multiple words for WebKit");
o.prop = "MozMultiWord";
@@ -1186,13 +1186,13 @@
t.eq( OpenLayers.Util.getVendorPrefixedObj( { "test": true }, "test" ), "test", "Standard object property");
OpenLayers.Util.getVendorPrefixedObj({}, "clear cache");
t.eq( OpenLayers.Util.getVendorPrefixedObj( { "OTest": true }, "test" ), "OTest", "Standard object property");
t.eq( OpenLayers.Util.getVendorPrefixedObj( { "oTest": true }, "test" ), "oTest", "Standard object property");
OpenLayers.Util.getVendorPrefixedObj({}, "clear cache");
t.eq( OpenLayers.Util.getVendorPrefixedObj( { "msTest": true }, "test" ), "msTest", "Standard object property");
OpenLayers.Util.getVendorPrefixedObj({}, "clear cache");
t.eq( OpenLayers.Util.getVendorPrefixedObj( { "MozTest": true }, "test" ), "MozTest", "Standard object property");
t.eq( OpenLayers.Util.getVendorPrefixedObj( { "mozTest": true }, "test" ), "mozTest", "Standard object property");
OpenLayers.Util.getVendorPrefixedObj({}, "clear cache");
t.eq( OpenLayers.Util.getVendorPrefixedObj( { "webkitTest": true }, "test" ), "webkitTest", "Standard object property");