3

我想从外部样式表更改背景图像。

例如在外部样式表背景图像是:

#nav
  {
   background-image:url(../images/nav.png);
  }

现在我想在运行时通过 javascript 更改它,例如:

#nav
  {
   background-image:url(../images/newImg.png);
  }

我可以使用以下 javascript 代码成功更改此图像:

 eval('theRule.style.backgroundImage="../images/newImg.png"');

但问题是:结果看起来像这样:

#nav
  {
   background-image:url(http//localhost/project/images/newImg.png);
  }

我不需要http//localhost/project/等...

我只需要../images/newImg.png

我努力解决这个问题,但我还没有找到任何解决方案。

所以请指导我如何解决这个问题?

感谢您阅读我的问题

问候

4

1 回答 1

1

尝试。

rule.style.setProperty("background-image", "../images/newImg.png", "");
rule.style.cssText = rule.style.cssText.replace("../images/nav.png", "../images/newImg.png"); //Replace all images

但如果没有帮助,那么就不要找到简单的方法。

于 2012-11-19T13:31:21.783 回答