jQuery

2012-12-06 4 views
5

एचटीएमएल केंद्र के लिए एक div चेतन।jQuery

मेरे वर्तमान js:

$(document).ready(function() { 
     $("#animate").animate({left: "+=512"}, 2000); 
}); 

और अब मैं सही करने के लिए सिर्फ 512 px के बजाय केंद्र के लिए इसे बनाने के लिए करना चाहते हैं।

+0

क्या केंद्र के लिए? # शीर्षलेख, # कंटेनर, दस्तावेज़, खिड़की? – pxx

उत्तर

6

मुझे लगता है कि #animate की स्थिति absolute है। अपनी मूल तत्व में तत्व को केंद्रित करने के सिर्फ left करने के लिए अपने माता-पिता की चौड़ाई शून्य से अपनी ही चौड़ाई के आधे के आधे जोड़ें:

$("#animate").animate({ 
    left: $("#animate").parent().width()/2 - $("#animate").width()/2 
}, 2000); 

मैं jsFiddle का उपयोग कर एक demo बनाया।

+0

यह रीफ्रेश पर अब और काम नहीं करता है:/ –

+0

@WouterVandenputte इसे ब्राउज़र रीफ्रेश पर भी व्यवहार करना चाहिए ... वैसे भी, आप [बाएं मान सेट करें] (http://jsfiddle.net/8gJAa/1 /) एनिमेट करने से पहले। – Matthias

1

आप इसे इस तरह से स्क्रीन पर केंद्रित करने के लिए उपयोग कर सकते हैं,

Jquery

$(document).ready(function() { 
    $("#animate").animate({left: $(window).width()/2}, 2000); 
}); 

सीएसएस

<style type="text/css"> 
div 
{ 
    height: 50px; width: 50px; background-color: Red;position:absolute; top:0; left:0; 
} 
</style> 

एचटीएमएल

<div id="container"> 
    <div id="header"> 
     <div id="animate"> 
      cartagena 
     </div> 
    </div> 
</div> 
2

asuming आप, खिड़की के केंद्र इस कोड का उपयोग करना चाहते हैं:,

$("#myJQUIDialog").parent().position({ 
    my: "center", 
    at: "center", 
    of: window, 
    using: function (pos, ext) { 
     $(this).animate({ top: pos.top }, 600); 
    } 
}); 

इस केंद्र संवाद, और एक ही समय में चेतन एक चिकनी केंद्रित में जिसके परिणामस्वरूप