替换某些元素上的所有背景图像的好方法是每个元素自己的id +".jpg"?使用jquery
我是否需要使用$ .each,或者我可以编辑它以某种方式工作:
$(".element").css("background-image", "url(img/" + $(this).data("id") + ".jpg)");
// it sets undefined.jpg, $(this) is not the way
Run Code Online (Sandbox Code Playgroud)
编辑PS:数据("id")不是拼写错误.我在元素上使用data.id
你可以使用.css()的setter版本,它将一个函数作为第二个参数,然后从该函数返回样式值
$(".element").css("background-image", function () {
return "url(img/" + $(this).data("id") + ".jpg)"
});
Run Code Online (Sandbox Code Playgroud)
在您的情况下,this将引用您编写代码的函数的上下文,而不是需要引用当前.element元素.