2011-07-12 11 views
7

के साथ जोड़ा गया है मैं एक परियोजना पर काम कर रहा हूं और कार्यों में से एक पृष्ठभूमि को स्थिर और पूरे पृष्ठ को कवर करना है। इसके बारे में मुझे "बहुत बढ़िया, आसान, प्रगतिशील CSS3 रास्ता" का उपयोग करके this tutorial मिला। मेरी समस्या यह है कि मैं और अधिक पृष्ठों है और प्रत्येक एक अलग पृष्ठभूमि है तो मैं <body> इस तरह पर पृष्ठभूमि छवि डाल करने के लिए है:एमएस फ़िल्टर jquery

<body style="background-image:url(images/mainBg_1.jpg);"> 

(भी सीएसएस शैली <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> टैग से लिया जाता है के रूप में मैंने लिखा है ऊपर, तो मैं सीधे लिख नहीं सकता सीएसएस में (प्रत्येक पृष्ठ में अलग पृष्ठभूमि होती है)।

क्या इन फिल्टर को jQuery का उपयोग करके जोड़ने का कोई तरीका है? मैंने सफलतापूर्वक शरीर से छवि का मार्ग लिया, इसलिए मुझे केवल इस कोड में पेस्ट करने की आवश्यकता है और फिर आईई < = 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')" 
      });   

    } 
}); 
+0

क्या आप यहां अपना कोई कोड देख रहे हैं? तुमने कहा ... 'इस तरह' ... कुछ भी नहीं दिखाता है! अपने कोड को अपने उत्तर के लिए '' –

उत्तर

0

आप $ ('शरीर') का उपयोग कर सकते सीएसएस() या $ ('शरीर') attr() और शरीर की शैली विशेषता बदल जाते हैं।।।

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

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

+0

टैंक में संलग्न करें। मुझे इन कार्यों के बारे में कुछ जानकारी थी, लेकिन मुझे यकीन नहीं था कि इस मामले में इसका उपयोग कैसे किया जाए। अभी मैं सफल हूं इसलिए सबकुछ ठीक दिखता है। – stefanz

1

टेस्ट इस तरह
यह की तरह कुछ हो सकता है:

आप एक छिपा हुआ img तत्व यह है कि अपने वांछित छवि है अपने पेज में जोड़ने

<img class="myBgImage" src="images/mainBg_1.jpg" style="display:none"/> 


आप उस छवि वर्ग के नाम

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

$('body').append("<style>body{progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+bgImage+"', sizingMethod='scale'); -ms-filter: 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=' "+ bgImage +"', sizingMethod='scale')';}</style>"); 

से छवि src हड़पने और तुम शरीर को संलग्न सीएसएस आईई बीजी-छवि के लिए वीएआर पकड़े img src यूआरएल होने को ठीक।

बस एक विचार।

+0

शरीर में नहीं, बल्कि शैलियों को सिर में जोड़ना बेहतर है। – Emil

+0

सहमत हैं। धन्यवाद एमिल –

+0

आपका विचार अच्छा था लेकिन सही तरीके से पालन नहीं किया। इसके अलावा मैंने छवि को एचटीएमएल पर रखा। – stefanz

संबंधित मुद्दे