code: function js(obj, property) {
          if (jsCache[property] === undefined) {
              var tmpProp,
                  i = 0,
                  l = VENDOR_PREFIXES.length,
                  prefix,
                  isStyleObj = (typeof obj.cssText !== "undefined");
  
              jsCache[property] = null;
              for(; i<l; i++) {
                  prefix = VENDOR_PREFIXES[i];
                  if(prefix) {
                      if (!isStyleObj) {
                          // js prefix should be lower-case, while style
                          // properties have upper case on first character
                          prefix = prefix.toLowerCase();
                      }
                      tmpProp = prefix + property.charAt(0).toUpperCase() + property.slice(1);
                  } else {
                      tmpProp = property;
                  }
  
                  if(obj[tmpProp] !== undefined) {
                      jsCache[property] = tmpProp;
                      break;
                  }
              }
          }
          return jsCache[property];
      }
docs: APIMethod: js
  Detect which property is used for a JS property/method
  
  Parameters:
  obj - {Object} The object to test on
  property - {String} The standard (unprefixed) JS property name
  
  Returns:
  {String} The standard JS property, prefixed property or null if not
  supported