无法使用变量使用jQuery设置'background-image'

时间:2013-09-30 22:29:03

标签: jquery css

我正在尝试使用jQuery设置DIV的背景图像。图像的路径存储在变量中。我已使用控制台+复制/粘贴验证了图像的路径是否有效。

以下是代码:

var bg = $('.temp-canvas', this).attr('data-background');
$(this).css('background-image', 'url('+bg+')');

$(this)被使用,因为它在.each()循环中运行。

此代码不会向DIV添加任何内容。在代码中,用存储的bg变量的字符串替换'+ bg +'就像魅力一样。我至少期望代码会添加style =“background-image:url('invalid_path')”但没有添加任何内容。我简直莫名其妙!

1 个答案:

答案 0 :(得分:0)

编辑:在这里工作演示 http://jsfiddle.net/vnf6D/

创建一个包含您想要的第二张照片的课程。

.canvas
{
   background-image: url(your-image.jpg);
}

然后在jquery上添加你想要的事件

$(document).ready(function(){
  $(".temp-canvas").click(function(){
    $(this).addClass("canvas2");
  });
});