विषय पर एक त्वरित खोज निम्न दिखाता है:
jQuery fadeIn/fadeOut IE cleartype glitch
समस्या यह है कि सीएसएस "फिल्टर" विशेषता स्वचालित रूप से नहीं हटाया जाता है हो रहा है। सबसे सरल उपाय इस समस्या का इसे मैन्युअल रूप से हटाने के किया जाएगा: ब्लॉग पोस्ट के ऊपर बताते
$('#myDiv').fadeIn('slow', function() {
this.style.removeAttribute('filter');
});
रूप में, यह एक नहीं बल्कि गन्दा समाधान है। ब्लॉग पोस्ट से
अंश, इस समस्या का सफाई घोल सहित:
इसका मतलब यह है कि हर बार हम एक तत्व फीका करने के लिए चाहते हैं , हम की जरूरत फिल्टर विशेषता, हटाने जो हमारे कोड को गन्दा लग रहा है।
एक सरल, अधिक सुरुचिपूर्ण समाधान jQuery का प्लगइन इंटरफ़ेस के माध्यम से एक कस्टम समारोह के साथ .fadeIn() और .fadeOut() फ़ंक्शन रैप करने के लिए किया जाएगा। कोड बिल्कुल समान होगा, लेकिन फ़ेड फ़ंक्शन को सीधे कॉल करने के बजाय, हम रैपर को कॉल करते हैं। इसलिए जैसा:
$('#node').customFadeOut('slow', function() {
//no more fiddling with attributes here
});
तो, आप इस काम के मिलता है? में के बाद निम्न कोड शामिल हैं अतिरिक्त कार्यक्षमता के लिए jQuery लाइब्रेरी शामिल करें।
(function($) {
$.fn.customFadeIn = function(speed, callback) {
$(this).fadeIn(speed, function() {
if(jQuery.browser.msie)
$(this).get(0).style.removeAttribute('filter');
if(callback != undefined)
callback();
});
};
$.fn.customFadeOut = function(speed, callback) {
$(this).fadeOut(speed, function() {
if(jQuery.browser.msie)
$(this).get(0).style.removeAttribute('filter');
if(callback != undefined)
callback();
});
};
})(jQuery);
स्रोत
2009-01-04 14:34:00
grr वे इसे मानक फीडइन में क्यों नहीं डाल सकते हैं। बस इसकी पुष्टि 1.3.1 में नहीं है (कम से कम अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता के बिना नहीं) तो शायद इस समाधान के साथ –
भी नहीं है, यह अभी भी मेरी राय में बहुत भयानक लग रहा है। यह स्पष्ट रूप से स्पष्ट है कि एक गड़बड़ है। रंगीन बक्से में फीका करने के लिए जितना संभव हो सके प्रयास करें और टेक्स्ट को तुरंत प्रकट करें –
jQuery 1.9 के रूप में, jQuery.browser पहचानकर्ता को बहिष्कृत किया गया है। बहुत बढ़िया ... :-("ब्राउज़र पहचान" के बजाय उपरोक्त कोड को "फीचर डिटेक्शन" के माध्यम से कार्यान्वित करने के लिए कोई सुझाव? – ClearCloud8