jquery - 需要通过从属性中获取值来为元素分配宽度

标签 jquery html

我有这个 HTML 代码:

<div class="skills">
    <div class="skill">
        <span>Photoshop</span>
        <div class="bar" data-percent="80">
            <div></div>
        </div>
    </div>

    <div class="skill">
        <span>Illustrator</span>
        <div class="bar" data-percent="20">
            <div></div>
        </div>
    </div>

    <div class="skill">
        <span>Wordpress</span>
        <div class="bar" data-percent="30">
            <div></div>
        </div>
    </div>

    <div class="skill">
        <span>Joomla</span>
        <div class="bar" data-percent="65">
            <div></div>
        </div>
    </div>
</div>

还有这段 jQuery 代码:

var width = $('.bar').attr('data-percent');
$('.bar > div').css('width', width + "%");

现在它正在获取 data-percent 属性的第一个 .bar 的 值,例如40,并将其作为 CSS 样式传递,例如width: 40%,但它只采用第一个 .bar 的属性,并对所有其他元素应用相同的宽度。我希望它获取每个属性的属性,并为每个属性分配宽度。

最佳答案

尝试

$('.bar > div').css('width', function(){
    return $(this).parent().data('percent') + '%'
});

演示:Fiddle

关于jquery - 需要通过从属性中获取值来为元素分配宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18290768/

相关文章:

javascript - 图标在 Angular 4 的导航中消失

html - DIV 位置因内容长度而异

javascript - 按钮内的链接在 Firefox 中不起作用

javascript - 在 github 上设置演示页面

javascript - 使用javascript点击更改DIV中的文本

javascript - XHR 无法加载 <URL>。请求的资源上不存在 'Access-Control-Allow-Origin' header

javascript - 单击任何人 'select' 时如何打开/关闭 'div' 的选项

javascript - JQuery字符限制器同时忽略文本区域中的空格

html - 简单的 html 和 css 帮助

html - 最小高度为 90%?