2013-12-12 21 views
0

我需要为IE浏览器添加background-size: cover到动态创建的背景图片。 我必须补充thisto我的元素内联CSS:添加字符串到JQuery的内联CSS?

<div style="filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + imgsrc + "', sizingMethod='scale');"> 

我曾尝试:

var iehackstring = "filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + imgsrc + "', sizingMethod='scale');"; 

$(this).css(iehackstring); 

和:

var iehackstring = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + imgsrc + "', sizingMethod='scale');"; 

$(this).css("filter" : iehackstring); 

但不能让它开始工作。

有没有人知道一个很好的方法来做到这一点?

+1

为什么不把它放在一个CSS文件中并将其包装在IE条件中? –

+0

@Justin是对的。只需将它放在一个CSS文件中,然后向目标添加一个类 –

+1

$('head')。append($(“”).text(iehackstring)) – dandavis

回答

0

这不是优雅,但你可以试试这个:

$(this).attr("data-original-style", $(this).attr("style")); 
$(this).attr("style", $(this).attr("style") + "[your new style comes here"]); 

万一你再次需要原始..你可以刚刚从attr("data-original-style")得到它,并再次将其设置为style