通过JS设置时,背景图像在IE中不起作用

时间:2017-11-03 11:42:22

标签: javascript

我正在尝试从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无效。所以请不要将其标记为重复。

1 个答案:

答案 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";