jQuery从数据属性获取路径

时间:2014-12-27 13:58:11

标签: javascript jquery css this jquery-data

我有一个小问题,我想得到"路径"来自数据属性并添加到背景中。

HTML

<div>
  <div data-image="../images/header.jpg"></div>
</div>

的jQuery

$('[data-image]').css(
    {
        background: "url("+$(this).data('image')+") no-repeat center",
        backgroundSize: "cover",
        height: ($(document).height()/ 3)
    }
);

你知道这是怎么做到的吗?

1 个答案:

答案 0 :(得分:2)

只需将元素缓存在变量中并使用它

var elm = $('[data-image]'); // cache it
elm.css({
    background: "url("+ elm.data('image') +") no-repeat center", // use it
    backgroundSize: "cover",
    height: ($(document).height()/ 3)
});

如果有更多元素,您可以使用each

elm.each(function(){
    $(this).css({
        background: "url("+ $(this).data('image')+ ") no-repeat center",
        backgroundSize: "cover",
        height: ($(document).height()/ 3)
    });
});