2011-02-11 13 views
7

Aquí está mi código:Javascript/jQuery: Matemáticamente Divide dos variables

var frameWidth = 400; 
var imageWidth = $('#inner-image').css('width'); 
var numberOfFrames = imageWidth/frameWidth; 

¿Cómo hago "numberOfFrames" pantalla como un cociente? ES DECIR. procesar "frameWidth" y "imageWidth" como números, en lugar de objetos?

Avísame si necesito explicarme más claramente. ¡Gracias!

Respuesta

15

.css('width') es probable que regrese el valor con px. Puede usar parseInt() para obtener solo el número.

var frameWidth = 400; 
var imageWidth = parseInt($('#inner-image').css('width'), 10); 
var numberOfFrames = imageWidth/frameWidth; 

El segundo argumento especifica 10 la base de que parseInt() debe utilizar.

También puede usar el método width()(docs) para obtener el resultado sin el px.

var frameWidth = 400; 
var imageWidth = +$('#inner-image').width(); 
var numberOfFrames = imageWidth/frameWidth; 

Aquí he utilizado el + operador unitario para que sea un número en lugar de una cadena.

+0

¡Eso fue todo! Gracias por ayudarme a armarlo. – Rrryyyaaannn

+0

Rrryyyaaannn: De nada. – user113716

+0

+1 para usar la base 10 en el parseInt, he visto tantos usos de esta función como resultado de un análisis impredecible –

Cuestiones relacionadas