MSfilter添加了jquery

我正在研究一个项目,其中一项任务是使背景静态并覆盖整个页面。 关于这个我找到了这个教程 ,使用“很棒,简单,渐进的CSS3方式”。 我的问题是我有更多的页面,每个页面都有不同的背景,所以我必须将背景图像放在如下所示:

  

(也就是css样式放在 ,而不是放在“html”上,就像在例子中一样)

正如您在该链接中看到的,IE有filter,如下所示:

 filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='.**myBackground.jpg**', sizingMethod='scale'); -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='**myBackground.jpg**', sizingMethod='scale')"; 

问题是“myBackground.jpg”取自标签,正如我上面所写,因此我不能直接在css中编写(每个页面都有不同的背景)。

有没有办法使用jQuery添加这些filter? 我成功地从body中获取了图像的路径,因此我只需要将其粘贴到此代码中,然后使用jQuery for IE <= 8添加。

谢谢你的回答,跟着他们我成功解决了我的问题。 所以,如果有人想要代码:

 $(function(){ var mu = $.browser; if (mu.msie && mu.version < 9) { var curBg = $('html').attr('style'); curBg = curBg.split('('); curBg = curBg[1].split(')'); $('html').css({ "filter" : "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+curBg[0]+"', sizingMethod='scale')", "-ms-filter" : "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+curBg[0]+"', sizingMethod='scale')" }); } }); 

您可以使用$(’body’)。css()或$(’body’)。attr()并更改body的style属性。

http://api.jquery.com/css/

http://api.jquery.com/attr/

以这种方式测试
它可能是这样的:

在页面中添加一个包含所需图像的隐藏img元素

  

您从该图像类名称中获取图像src

 var bgImage = $('img.myBgImage').attr('src'); $('body').append(""); 

并且你附加到身体css IE修复有BG-image VAR持有img src url。

只是一个想法。