diff options
Diffstat (limited to 'src/jqLite.js')
| -rw-r--r-- | src/jqLite.js | 21 | 
1 files changed, 19 insertions, 2 deletions
diff --git a/src/jqLite.js b/src/jqLite.js index d7faa1e8..9ff90d7c 100644 --- a/src/jqLite.js +++ b/src/jqLite.js @@ -88,6 +88,16 @@ function getStyle(element) {    return current;  } + +/** + * Converts dash-separated names to camelCase. Useful for dealing with css properties. + */ +function camelCase(name) { +  return name.replace(/\-(\w)/g, function(all, letter, offset){ +    return (offset == 0 && letter == 'w') ? 'w' : letter.toUpperCase(); +  }); +} +  /////////////////////////////////////////////  function jqLiteWrap(element) {    if (isString(element) && element.charAt(0) != '<') { @@ -247,12 +257,14 @@ forEach({    hasClass: JQLiteHasClass,    css: function(element, name, value) { +    name = camelCase(name); +      if (isDefined(value)) {        element.style[name] = value;      } else {        var val; -      if (msie <=8) { +      if (msie <= 8) {          // this is some IE specific weirdness that jQuery 1.6.4 does not sure why          val = element.currentStyle && element.currentStyle[name];          if (val === '') val = 'auto'; @@ -260,7 +272,12 @@ forEach({        val = val || element.style[name]; -      return  (val === '') ? undefined : val; +      if (msie <= 8) { +        // jquery weirdness :-/ +        val = (val === '') ? undefined : val; +      } + +      return  val;      }    },  | 
