diff options
author | Eric Guzman | 2012-02-13 10:29:49 -0800 |
---|---|---|
committer | Eric Guzman | 2012-02-13 10:29:49 -0800 |
commit | e4893f7d3c3b9bd7967973197c3ffb5d3a075c91 (patch) | |
tree | f3d4fd9d96ba0dcf846fbf66153fb443bd60f767 /js/lib | |
parent | ef032412216d437ce1c7dfc9050ab41adf0594c0 (diff) | |
parent | e142611e22718b1f1d1696902ad9161ec5f33f98 (diff) | |
download | ninja-e4893f7d3c3b9bd7967973197c3ffb5d3a075c91.tar.gz |
Merge branch 'refs/heads/master' into TreeComponents
Diffstat (limited to 'js/lib')
-rw-r--r-- | js/lib/NJUtils.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/js/lib/NJUtils.js b/js/lib/NJUtils.js index d6548871..0e886ae7 100644 --- a/js/lib/NJUtils.js +++ b/js/lib/NJUtils.js | |||
@@ -183,6 +183,27 @@ exports.NJUtils = Object.create(Object.prototype, { | |||
183 | 183 | ||
184 | }, | 184 | }, |
185 | 185 | ||
186 | // Returns the numerical value and unit string from a string. | ||
187 | // Useful for element properties. | ||
188 | // 100px will return the following array: [100, px] | ||
189 | getValueAndUnits: { | ||
190 | value: function(input) { | ||
191 | var numberValue = parseFloat(input); | ||
192 | |||
193 | // Ignore all whitespace, digits, negative sign and "." when looking for units label | ||
194 | // The units must come after one or more digits | ||
195 | var objRegExp = /(\-*\d+\.*\d*)(\s*)(\w*\%*)/; | ||
196 | var unitsString = input.replace(objRegExp, "$3"); | ||
197 | if(unitsString) { | ||
198 | var noSpaces = /(\s*)(\S*)(\s*)/; | ||
199 | // strip out spaces and convert to lower case | ||
200 | var match = (unitsString.replace(noSpaces, "$2")).toLowerCase(); | ||
201 | } | ||
202 | |||
203 | return [numberValue, match]; | ||
204 | } | ||
205 | }, | ||
206 | |||
186 | /* ================= Style methods ================= */ | 207 | /* ================= Style methods ================= */ |
187 | 208 | ||
188 | ///// Get computed height of element | 209 | ///// Get computed height of element |