как получить значение атрибута свойства 'width'

0

Это мой индикатор выполнения http://jsfiddle.net/vjNpj/2247/, я хочу, чтобы диапазон (процентное значение) мог измениться вместе при изменении ширины div. например, когда ширина составляет 50%, диапазон будет отображаться на 50%.

что я могу думать о attr(), но как получить его ценность?

Я пробовал это, но не работал

var percent = $('#progressbar > div').attr('width');
alert(percent);
Теги:

5 ответов

0
Лучший ответ

Вот JSFIDDLE, который достигает того, что вы после

$progress_bar = $('#progressbar');
var progressbar_width = Math.floor(100 * ($progress_bar.find('div').width()) / $progress_bar.width())
$progress_bar.find('span').text(progressbar_width + '%')

Вам придется вызывать этот код каждый раз, когда вы обновляете ширину полосы выполнения.

  • 0
    TQ очень очень много .. что мне нужно сейчас закруглить ~ TQ!
  • 0
    @UlisesColen Попробуйте текущий код
Показать ещё 2 комментария
3

Давайте сначала это поймем

Разница между.css(width) и.width() заключается в том, что последний возвращает значение пикселя без единицы (например, 400), в то время как первое возвращает значение с неизменными единицами (например, 400 пикселей). Метод.width() рекомендуется, когда необходимо использовать ширину элемента в математическом вычислении.

Таким образом, вы можете сделать,

alert($('#progressbar > div').css("width"));  // 388
alert($('#progressbar > div').prop("width")); // 388px;

Скрипт для большего понимания

  • 1
    +1 для различий CSS ("ширина") и проп ("ширина")
  • 0
    @ Сомнатх, спасибо ..
0

Hey width - это атрибут, так же как value - это атрибут, поэтому вы можете только получить ширину, а не значение ширины. И для этого я рекомендую ответить amit aggarwal.

0

Вам нужно сделать математический расчет для этой работы -

var percent = $('#progressbar div').width();
var Percent_Load = parseInt((percent * 100)/ $('#progressbar').width(), 10)
alert(Percent_Load);

Попробуй это

0
var percent = $('#progressbar > div').width();

или

var percent = $('#progressbar > div').css('width');


alert(percent);

демонстрация

  • 0
    понял, все просто, но как перевести в проценты? Похоже, я собираюсь сделать немного математики ..
  • 0
    сначала получите общую ширину div теперь, когда вы получите width, затем рассчитайте% с общей шириной и покажите, как хотите

Ещё вопросы

Сообщество Overcoder
Наверх
Меню