我正在尝试从javascript结束设置背景图片。我的代码在Chrome中运行良好,但在IE11中测试时,图像不会显示。
function setApplicationLogo() {
var name = getApplicationName();
if (name) {
document.getElementById('loginLogo').style.background = 'url(./images/custom/' + logo[name] + ')no-repeat center bottom';
} else {
document.getElementById('loginLogo').style.background = 'url(./images/logo77.gif)no-repeat center bottom';
}
}
我知道修复是相当直接的,但我在过去2-3小时内摸不着头脑。我已尝试将background
更改为backgroundImage
并删除在no-repeat
之前添加/删除空格,但对IE无效。所以请不要将其标记为重复。
答案 0 :(得分:1)
我认为问题在于你的语法错误。基本上 .background 具有以下语法:
object.style.background = "color image repeat attachment position size origin clip|initial|inherit"
其中图像是
object.style.backgroundImage = "url('URL')|none|initial|inherit"
所以,我认为proplem在引用中。图像路径应为 url 的字符串值。 例如:
document.getElementById("myDIV").style.background = "url('smiley.gif') blue repeat-x center";
所以,试试这个:
document.getElementById('loginLogo').style.background = "url('./images/custom/'" + logo[name] + "') no-repeat center bottom";