jQuery. Функция css () не возвращает ожидаемые значения

Хорошо, я поискал в документации jQuery (нужен кто-то, кто занимается поддержкой), я искал SO и искал в Google. Я не могу найти ответ на этот вопрос.


In Words

Раньше я помню, как jQuery работал следующим образом:

$ ('# myObj'). Width () возвращает вычисленное width of #myObj .
$ ('# myObj'). css ('width') возвращает ширину, введенную в таблицу стилей CSS.

Теперь любой jQuery пакет, который я использую, возвращает одно и то же число независимо от того, какой метод я использую.

$ (' #myObj '). width () возвращает вычисленную ширину #myObj как целое число (float?).
$ (' # myObj '). css (' width ') возвращает вычисленную ширину #myObj в виде строки с px на конце.


В псевдокоде

#myobject{
    width: 14em;
    height: 14em;
}

Has Text
//Always alerts "224px [newline] 224" //Expected to alert "14em [newline] 224"

эти возвращаемые значения на основе пикселей почти полностью бесполезны, поскольку Мне нужно выполнить расчеты на основе того, что на самом деле находится в CSS. Например, я хочу выполнить математические вычисления в левой позиции элемента, но я не могу, потому что он продолжает возвращать значения пикселей, которые бесполезны в дизайне на основе em .

Есть ли способ получить фактические значения из CSS в jQuery?
css ('width') возвращает вычисленную ширину #myObj в виде строки с px на конце.


В псевдокоде

#myobject{
    width: 14em;
    height: 14em;
}

Has Text
//Always alerts "224px [newline] 224" //Expected to alert "14em [newline] 224"

Эти возвращаемые на основе пикселей значения почти полностью бесполезны, так как мне нужно делать расчеты на основе того, что на самом деле находится в CSS. Например, я хочу выполнить математические вычисления в левой позиции элемента, но я не могу, потому что он продолжает возвращать значения пикселей, которые бесполезны в дизайне на основе em .

Есть ли способ получить фактические значения из CSS в jQuery?
css ('width') возвращает вычисленную ширину #myObj в виде строки с px на конце.


В псевдокоде

#myobject{
    width: 14em;
    height: 14em;
}

Has Text
//Always alerts "224px [newline] 224" //Expected to alert "14em [newline] 224"

Эти возвращаемые на основе пикселей значения почти полностью бесполезны, так как мне нужно делать расчеты на основе того, что на самом деле находится в CSS. Например, я хочу выполнить математические вычисления в левой позиции элемента, но я не могу, потому что он продолжает возвращать значения пикселей, которые бесполезны в дизайне на основе em .

Есть ли способ получить фактические значения из CSS в jQuery?
поскольку мне нужно делать расчеты на основе того, что на самом деле находится в CSS. Например, я хочу выполнить математические вычисления в левой позиции элемента, но я не могу, потому что он продолжает возвращать значения пикселей, которые бесполезны в дизайне на основе em .

Есть ли способ получить фактические значения из CSS в jQuery?
поскольку мне нужно делать расчеты на основе того, что на самом деле находится в CSS. Например, я хочу выполнить математические вычисления в левой позиции элемента, но я не могу, потому что он продолжает возвращать значения пикселей, которые бесполезны в дизайне на основе em .

Есть ли способ получить фактические значения из CSS в jQuery?
Это ошибка jQuery или я что-то упустил?

Вот jsfiddle: http://jsfiddle.net/yAnFL/1/ .


Разрешение

По-видимому, это предполагаемый результат.
Я решил использовать этот плагин для преобразования за меня.
Отказ от контроля над CSS кажется плохим выбором в дизайне jQuery.

13
задан rockerest 29 March 2011 в 17:19
поделиться