使用javascript更改IE 10中的背景图像

使用javascript更改IE 10中的背景图像,javascript,html,internet-explorer-10,Javascript,Html,Internet Explorer 10,我最近在开发一个网站,我为我的网站开发了一个选项,用户可以更改背景图像 我以前使用windows 7和XP,更改背景图像在win 7和XP的Internet Explorer上都有效,但最近我转到了IE 10附带的windows 8,当我用IE 10测试我的站点时,更改背景图像不起作用 为什么这些家伙要换这些东西?我甚至不应该关心这件事,但仍然有人使用IE:( 这是我的密码 var body = document.getElementsByTagName("body")[0]; body.s

我最近在开发一个网站,我为我的网站开发了一个选项,用户可以更改背景图像

我以前使用windows 7和XP,更改背景图像在win 7和XP的Internet Explorer上都有效,但最近我转到了IE 10附带的windows 8,当我用IE 10测试我的站点时,更改背景图像不起作用

为什么这些家伙要换这些东西?我甚至不应该关心这件事,但仍然有人使用IE:(

这是我的密码

 var body = document.getElementsByTagName("body")[0];
 body.style.backgroundImage = "url(" + picurl + ")";

你知道如何使用IE 10实现吗?

如果图像已经预先知道,那么如果你在CSS文件的类中指定了它,并简单地添加了一个新类,就会减少维护。在jQuery中:

$(body).addClass('my-bgd-class');
但是,由于您使用的是变量,您可以执行以下操作:

$(body).css('background-image', 'url("' + picurl + '")');

如果图像已经预先知道,那么如果您在CSS文件中的类中指定它,并简单地添加一个新类,就会减少维护。在jQuery中:

$(body).addClass('my-bgd-class');
但是,由于您使用的是变量,您可以执行以下操作:

$(body).css('background-image', 'url("' + picurl + '")');

您提供的代码在IE10中适用于我。如果您的url包含空格字符, 试试这个


您提供的代码在IE10中适用于我。如果您的url包含空格字符, 试试这个


你引用的代码对我来说很好

为了证明这一点,我做了很多工作--

以上代码在IE10和其他浏览器中的工作原理与我相同

如果在IE10中你的站点有一个特定的问题,那不是你引用的代码


您可能应该在
url()
样式参数中添加引号,以防url中有空格、括号或类似的内容,但除此之外,您的代码很好,在所有带引号或不带引号的浏览器中都适用。

您引用的代码对我很好

为了证明这一点,我做了很多工作--

以上代码在IE10和其他浏览器中的工作原理与我相同

如果在IE10中你的站点有一个特定的问题,那不是你引用的代码


您可能应该在
url()中添加引号
style参数,如果URL中有空格、括号或类似的内容,但除此之外,您的代码很好,在所有带引号或不带引号的浏览器中都适用于我。

使用jQuery,它将减少浏览器特有的问题。确切的picurl是什么?一个包含图像文件绝对路径的字符串?尝试使用引号:
“url(\”“+picurl+”);
@AramKocharyan:谢谢,你能给我提供一些参考吗?@NaviGamage使用jQuery,它会减少浏览器特有的问题。picurl到底是什么?一个包含图像文件绝对路径的字符串?尝试使用引号:
“url(\”“+picurl+”\”)
@AramKocharyan:谢谢,你能给我提供一些参考吗?@NaviGamage这个问题仍然存在,我个人认为jQuery是一个更好的解决方案。OP可能没有意识到这一点,因此我提供了代码,以便他们在想尝试时进行比较。如果他们特别提到不想使用jQuery作为解决方案,情况会有所不同一个解决方案。类解决方案是一个很好的解决方案,如果它添加了非jQuery解决方案,我会有+1。开发人员不需要添加40ishK来添加类。[我使用jQuery,但不是每个人都这样做]对于jQuery,我想您需要将代码放入
$(函数(…)
$(文档)。就绪(函数(){…})
else body在脚本加载到head时可能还没有准备好。但是如果你没有使用jQuery,也不需要使用纯JS。问题仍然存在,我认为jQuery是一个更好的解决方案。OP可能没有意识到这一点,因此如果他们想尝试,我提供了代码进行比较。如果他们指定Ily提到他们不想使用jQuery作为解决方案。类解决方案是一个很好的解决方案,如果添加了非jQuery解决方案,我会使用+1。开发人员不需要添加40ishK来添加类。[我使用jQuery,但不是每个人都这样做]对于jQuery,我怀疑您需要将代码放入
$(函数(…)
$(文档).ready(function(){…})
else当脚本加载到head中时,body可能还没有准备好。但是如果您没有使用jQuery并且不需要,请使用纯JS。