2012-01-09 143 views
0
$(document).ready(function() { 
    $('#picture').css('height', '666px'); 
    $('#picture').click(function() { 
     $(this).css('background-image', "url('../images/picture_2.jpg')"); 
    }); 
}); 

在上面的代码中,height已成功更改为666px,但背景图像根本不变(仍为原始图像)。我如何更改使用jQuery的css背景图片?

当我将background-image更改为'none'而不是“url('../ images/picture_2.jpg')”时,它确实使背景图像消失。

我在做什么错?

+0

尝试从url内部删除单引号() – 2012-01-09 20:12:15

+0

哪个浏览器?它可能只是不会加载它.. – FakeRainBrigand 2012-01-09 20:12:48

+0

@bobek没有工作 – 2012-01-09 20:12:59

回答

5

我的猜测是你输入的URL不正确。该网址应该与您在上的页面相关。我敢打赌你的网址是相对于你的CSS样式表。一般来说,只要在JS中使用绝对路径。

您也不需要围绕路径的单引号。

1

更正图像的路径。

图像的路径将从网站的根目录计算,而不是从css计算。

只是为了澄清:

高度将改变页面中,如果#picture元素被点击凡为背景图像只会更改的负荷。

2

您提供的代码应该可以正常工作。我认为您提到的图片位置​​不正确。检查是否可以在萤火虫中看到该位置的图像。

我试过相同的代码,它对我来说工作得很好。 DEMO这里