瀏覽代碼

UI: Using eval() in Number and Integer so we can input stuff like 3.14/2.
I'm not sure about the consequences of using eval in this case though...

Mr.doob 11 年之前
父節點
當前提交
0829a9760f
共有 1 個文件被更改,包括 21 次插入5 次删除
  1. 21 5
      editor/js/libs/ui.js

+ 21 - 5
editor/js/libs/ui.js

@@ -843,9 +843,19 @@ UI.Number = function ( number ) {
 
 
 	var onChange = function ( event ) {
 	var onChange = function ( event ) {
 
 
-		var number = parseFloat( dom.value );
+		var value = 0;
 
 
-		dom.value = isNaN( number ) === false ? number : 0;
+		try {
+
+			value = eval( dom.value );
+
+		} catch ( error ) {
+
+			console.error( error.message );
+
+		}
+
+		dom.value = parseFloat( value );
 
 
 	};
 	};
 
 
@@ -996,14 +1006,20 @@ UI.Integer = function ( number ) {
 
 
 	var onChange = function ( event ) {
 	var onChange = function ( event ) {
 
 
-		var number = parseInt( dom.value );
+		var value = 0;
+
+		try {
 
 
-		if ( isNaN( number ) === false ) {
+			value = eval( dom.value );
 
 
-			dom.value = number;
+		} catch ( error ) {
+
+			console.error( error.message );
 
 
 		}
 		}
 
 
+		dom.value = parseInt( value );
+
 	};
 	};
 
 
 	var onFocus = function ( event ) {
 	var onFocus = function ( event ) {