如何在ajax请求后更改正文的背景图像?

时间:2018-01-16 03:25:54

标签: javascript jquery html css

我正在做一个ajax请求,当它完成时我想将body元素的背景图像更改为某个主题。主题只是1 - 5。

我试过了:

document.body.style.background = "url('images/" + theme + "/background.jpg')";

$("body").css('background-image', `url(images/${theme}/background.jpg)`);

$("body").css('background-image', 'url(images/' + theme + '/background.jpg)');

$("body").css('background-image', 'url("images/' + theme + '/background.jpg")');

这些都不起作用。如果我在网址中硬编码就可以了:

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

任何想法我做错了什么?

1 个答案:

答案 0 :(得分:1)

我觉得你的theme变量可能有错误的值。请尝试console.log('theme: ' + theme);进行检查。

您还可以在开发者控制台中查看是否报告了任何404错误。检查为您的图片调用的网址。

注意:如果您的theme变量是一个对象,则转换为所需的字符串。

您可以验证theme是否正确。如果它预计是一个数字,那么试试这个:

$("body").css('background-image', 'url("images/' + theme.replace(/[^\d]/g, '') + '/background.jpg")');

相关问题