我在imageUrl变量中有一个图像URL,我试图将其设置为CSS样式,使用jQuery:

$('myObject').css('background-image', imageUrl);

这似乎并不奏效,因为:

console.log($('myObject').css('background-image'));

返回none。

知道我哪里做错了吗?


当前回答

除了其他答案,你还可以用“background”。当你想要设置与背景使用图像的方式相关的其他属性时,这特别有用,例如:

$("myObject").css("background", "transparent url('"+imageURL+"') no-repeat right top");

其他回答

尝试修改"style"属性:

$('myObject').attr('style', 'background-image: url("' + imageUrl +'")');
$('myObject').css({'background-image': 'url(imgUrl)',});

我遇到的问题是,我一直在加分号;在url()值的末尾,这会阻止代码工作。

❌不工作代码:

$('#image_element').css('background-image', 'url(http://example.com/img.jpg);');
//--------------------------------------------------------------------------^

✅工作代码:

$('#image_element').css('background-image', 'url(http://example.com/img.jpg)');

注意省略的分号;在工作代码的末尾。我只是不知道正确的语法,而且真的很难注意到。希望这能帮助到其他处境相同的人。

这是我的代码:

$('body').css('background-image', 'url("/apo/1.jpg")');

喜欢,朋友

你需要在imageUrl之前和之后包括双引号("),就像这样:

$('myOjbect').css('background-image', 'url("' + imageUrl + '")');

这样,如果图像有空格,它仍然会被设置为属性。