Fügen Sie Javascript Pixel Werte hinzu?

8

Gibt es in javascript / jQuery eine Möglichkeit, zwei Variablen mit den Werten "60px" und "40px" zu verwenden und sie zu addieren, um "100px" zu erhalten?

Oder in einem allgemeineren Sinne, ich versuche, Positionen von Objekten relativ zu anderen Objekten zu berechnen, und es wäre wirklich praktisch, wenn ich so etwas tun könnte:

%Vor%

Natürlich gibt das nur ungültig "40px60px".

    
joshuahedlund 17.02.2012, 17:53
quelle

5 Antworten

14

entferne px aus Strings, füge Werte hinzu und füge dann px zurück

hinzu %Vor%     
Roman Goyenko 17.02.2012, 17:56
quelle
4

Wahrscheinlich ist der effizienteste Weg

%Vor%

Die 10 in den parseInt-Aufrufen sind notwendig, um gegen den Wert zu schützen, der fälschlicherweise in etwas anderem als Basis 10 berechnet wird.

    
wheresrhys 17.02.2012 22:28
quelle
4

Sie suchen nach der Funktion parseInt () .

%Vor%

Es lohnt sich auch, die Methode parseFloat () zu untersuchen. Es tut dasselbe wie parseInt (), arbeitet aber mit Zahlen mit Dezimalzahlen (auch bekannt als Fließkommawerte).

    
Daniel Szabo 17.02.2012 18:00
quelle
1
%Vor%

parseFloat analysiert nur das Präfix der Zeichenfolge, die eine Zahl ist.

    
Mike Samuel 17.02.2012 18:01
quelle
0

Sie können das tun, indem Sie den css.left-Wert des Objekts in etwa wie folgt analysieren:

%Vor%

Aber Sie sollten bedenken, dass der css.left-Wert möglicherweise nicht px , sondern auch % , em usw. ist. Der saubere Weg wäre also jQuery Offset-Methode , da dies den richtigen Pixelwert ergeben würde.

%Vor%     
Tharabas 17.02.2012 18:01
quelle

Tags und Links