2011-11-06 28 views
12

मैं एक div को top:275 एनिमेट करने का प्रयास कर रहा हूं।jQuery एनिमेट टॉप (नीचे से ऊपर तक)

मैंने .animate({marginTop: -820 } की कोशिश की लेकिन प्रत्येक स्क्रीन पर यह एक अलग स्थिति तक समाप्त होता है। । ।

इसलिए मैंने मार्जिनटॉप को .animate({top: 275} में बदल दिया लेकिन div ऊपर से नीचे (स्लाइडडाउन) से आता है। ध्यान दें, इसलिए मैं animate:top का उपयोग कर सकता हूं, मुझे एनीमेशन के दौरान div को position:absolute पर सेट करना पड़ा था। । ।

क्या ऊपर से ऊपर आने या मार्जिन बनाने के लिए कोई हैकीवे है प्रत्येक स्क्रीन रिज़ॉल्यूशन पर शीर्ष से समान दूरी है? (मुझे लगता है कि मार्जिनॉप को हल नहीं किया जा सकता है क्योंकि आईएम सेटिंग मार्जिन टॉप -820 शीर्ष पर पहुंचने के लिए: 275, इसलिए 1200 पीएक्स ऊंचाई से छोटी स्क्रीनें, div बहुत अधिक हो जाएगी ...)

मेरा कोड यहां है:

$("#features").fadeIn() 
      .css({ 
       position: 'absolute' 
      }).animate({ 
       top: '275' 
      }, function() { //callback }); 

उत्तर

29

आह इसे मिला !!

$("#features").fadeIn() 
.css({top:1000,position:'absolute'}) 
.animate({top:275}, 800, function() { 
    //callback 
}); 

तो बुनियादी तौर पर मैं बहुत अंत से 1000, तो यह 275 जो ऊपर है एनिमेटेड ...

+1

+1 fanks बीस्टी पर सीएसएस से शीर्ष निर्धारित किया है! मुझे स्लाइडडाउन() के लिए एक अलग तरीके से स्लाइड करने के लिए मेरे संवाद की आवश्यकता थी। मैंने प्रयोग किया: \t \t 'var height = $ dialog.outerHeight(); \t \t $ dialogPane.show() \t \t \t .css ({शीर्ष: ऊंचाई * -1}) \t \t \t .animate ({शीर्ष: -1}, 400, function() { \t \t \t \t // कॉलबैक \t \t \t}); ' – Evildonald

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