2012-08-02 20 views
7

मुझे सरल jQuery fadeIn() फ़ंक्शन पसंद है, खासकर क्योंकि यह चयनकर्ता को कोई अस्पष्टता मूल्य सेट किए बिना काम करता है! बस इसे display:none पर सेट करें और fadeIn() का उपयोग करके हमेशा काम करता है।jquery कैसे काम करता है? एनिमेट के साथ ऐसा करना()

हालांकि मैं अपने वर्तमान प्रोजेक्ट के लिए jQuery का उपयोग नहीं कर रहा हूं लेकिन zepto.js। ज़िप्टो केवल animate() के साथ आता है और fadeIn() के साथ नहीं आता है।

मुझे आश्चर्य है कि मैं एनिमेट फ़ंक्शन के साथ एक ही व्यवहार कैसे बना सकता हूं! मुझे यहां कौन से गुणों को एनिमेट करना है?

$('#selector').animate({ 
    display: "block", 
    opacity: 1 
}, 500, 'ease-out') 

अग्रिम

+0

'.fadeIn()' समारोह की संभावना सिर्फ jQuery कॉल '.animate में उपयुक्त कार्यान्वयन पा सकते हैं आशा है कि () 'फ़ंक्शन, इसलिए इसे [jQuery कोड] (http://code.jquery.com/jquery-1.7.2.js) में ढूंढने का प्रयास करें। –

उत्तर

8
(function($){ 
     $.extend($.fn, { 
     fadeIn: function(ms){ 
      if(typeof(ms) === 'undefined'){ 
      ms = 250; 
      } 
      $(this).css({ 
      display: 'block', 
      opacity:0 
      }).animate({ 
      opacity: 1 
      }, ms); 
      return this; 
     } 
     }) 
    })(Zepto) 

zepto jQuery $('.example').fadeIn(); तरह काम करता है चाल करना चाहिए।

संपादित करें: ट्रेजर सही है, भागों को समायोजित किया गया है।

+1

आपका समाधान बहुत अच्छा लग रहा है, लेकिन मैंने जावास्क्रिप्ट के बारे में जो पढ़ा है, उसके अनुसार आपको 'टाइपऑफ (एमएस) ===' अपरिभाषित '' का उपयोग करना चाहिए, न कि 'ms == अपरिभाषित', क्योंकि ऐसा कोई कीवर्ड नहीं है जैसे 'अपरिभाषित 'जेएस में और यह (कुछ निश्चित परिस्थितियों में) एक मूल्य के साथ एक चर भी हो सकता है! – trejder

+1

और - ज़ाहिर है! - 'डिस्प्ले: 'ब्लॉक',', 'डिस्प्ले नहीं: ब्लॉक,', 'ब्लॉक' के रूप में यहां एक अपरिभाषित (एसआईसी!) वैरिएबल है! – trejder

+1

@trejder इसे ठीक कर दिया! :) – Sem

3

में धन्यवाद jQuery fadein समारोह सिर्फ jQuery के लिए एक शॉर्टकट समारोह चेतन है। यह ओपेसिटी वैल्यू को बढ़ाकर समय की अवधि में अस्पष्टता को 0 से 1 तक बदल देता है।

// Generate shortcuts for custom animations 
jQuery.each({ 
    slideDown: genFx("show", 1), 
    slideUp: genFx("hide", 1), 
    slideToggle: genFx("toggle", 1), 
    fadeIn: { opacity: "show" }, 
    fadeOut: { opacity: "hide" }, 
    fadeToggle: { opacity: "toggle" } 
}, function(name, props) { 
    jQuery.fn[ name ] = function(speed, easing, callback) { 
     return this.animate(props, speed, easing, callback); 
    }; 
}); 
-1

आप इसे आजमा सकते हैं। मैंने थोड़ा डेमो बनाया। आपको इसे अस्पष्टता 0 बनाना है, फिर इसे प्रदर्शित करें: ब्लॉक को अस्पष्टता को एनिमेट करें।

जांच इस बेला http://jsfiddle.net/dTRhQ/

हालांकि, कि JQ में किया जाता है, मैं तुम्हें अपने ढांचे

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