javascript - 使用 width() 方法并以百分比形式返回值

标签 javascript jquery

所以我想使用 width() 方法返回我网站上元素的宽度,默认情况下它将以像素为单位显示。

我正在阅读W3Schools 您可以将值更改为许多不同的单位,例如 px、em、pt 等。

我想以百分比形式返回宽度,如何实现?

这是我的代码:

Jquery

$('.range-control').each(function(){
    var container = $(this),
        input = container.find('input'),
        output = container.find('output'),
        rangeWidth = input.width(),
        thumbWidth = container.attr('data-thumbwidth'),
        startValue = input.val(),
        startOffset = ((rangeWidth - thumbWidth) / 100) * startValue;

    output
        .css({
            'left' : startOffset
        });

    $(input).on('input', function(){
        var value = this.value,
            offset = ((rangeWidth - thumbWidth) / 100) * value;

        output
            .val(value)
            .css({
                'left' : offset
            });
    });
});

任何帮助将不胜感激!!

最佳答案

不能只用计算吗?

var parentWidth = $(this).parent().width();
var thisWidth = $(this).width(); 
var percentWidth = (thisWidth/parentWidth)*100+"%";

关于javascript - 使用 width() 方法并以百分比形式返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30686482/

相关文章:

javascript - Jquery 在悬停时向左滑动一个 div 并在鼠标移出时折叠不正常工作?

javascript - 如何在我的页面加载后立即运行 CSS 样式更改?

javascript - 模态内的模态,切换下一个时无法关闭当前一个

javascript - 无法读取 HTMLSelectElement 处未定义的属性 'replace'

jquery:如何使用正则表达式用html一些标记包装子字符串并插入变量?

javascript - JQuery 多类选择器在 IE6 中失败

javascript - 从 Google 电子表格中获取两个日期之间的数据

javascript - 如何用JS设置占位符

javascript - 如何使用突变对 Vuex 状态中的数据进行排序

Javascript过滤器检查多个值?