Я работаю над проектом, и одна из задач - сделать фон статичным и покрыть всю страницу. Об этом я нашел этот урок , используя «Удивительный, простой, прогрессивный путь CSS3». Моя проблема в том, что у меня больше страниц, и у каждой разный фон, поэтому мне нужно поместить фоновое изображение на <body>
, например:
<body style="background-image:url(images/mainBg_1.jpg);">
(также стиль css установлен на <body>
, а не на "html", как в примере)
Как вы можете видеть по этой ссылке, есть фильтры для IE, например:
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='.**myBackground.jpg**', sizingMethod='scale');
-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='**myBackground.jpg**', sizingMethod='scale')";
Проблема в том, что "myBackground.jpg" взят из тега <body>
, как я писал выше, поэтому я не могу писать напрямую в css (каждая страница имеет разный фон).
Есть ли способ добавить эти фильтры с помощью jQuery? Я успешно извлек путь изображения из тела, поэтому мне нужно только вставить его в этот код, а затем добавить с помощью jQuery для IE <= 8. </p>
Спасибо за ваши ответы, следуя им, мне удается решить мою проблему. Так что, если кто-то хочет код:
$(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')"
});
}
});