Недавно я тоже столкнулся с этой проблемой, и мне действительно не хотелось выполнять дополнительную работу по получению ширины родителя и вычислению процента.
После нескольких быстрых попыток вот что у меня получилось:
$($($(table).find('tr')[0]).find('td')).each(function (i, e) {
var proptW = $(e).prop("style").width;
console.log(proptW);
});
Итак, я думаю, что это самый близкий способ использования jQuery для получения значения ширины элемента на основе того, что разработчик указал в css.
Как видите, у меня есть таблица, и мне нужно получить ширину для каждого из столбцов.
Мы не можем получить указанное разработчиком значение (DSV) напрямую с помощью метода jQuery, но после объединения со встроенным методом JavaScript это всего один шаг от получения DSV.
Поскольку DSV находится в Style, а Style является свойством элемента, мы можем использовать метод jQuery: prop(), чтобы получить его. Этот метод возвращает объект стиля (скажем, sty), так что мы можем вызвать sty.width для прямого получения DSV.
Это не чистый способ jQuery, но он достаточно прост и работает для меня.
person
Franva
schedule
21.04.2015