मुझे एक टॉगल बनाने की आवश्यकता है जो "सामान्य" टॉगल के विपरीत दूसरे शब्दों में नीचे की ओर एनिमेट नहीं करता है। शायद सरल है कि सामान्य स्लाइड टॉगल इत्यादि के रूप में स्लाइड डाउन करने के बजाय टॉगल को मेनू आइटम (यह एक मेनू है) के ऊपर स्लाइड करना चाहिए। मैं इस के साथ लगभग वहाँ हूँ:jQuery - वर्टिकल अप टॉगल (यानी नीचे नहीं)
var opened = false;
$("#coltab li").click(function(){
if(opened){
$(this).children('ul').animate({"top": "+=300px"});
} else {
$(this).children('ul').animate({"top": "-=300px"});
}
$(this).children('ul').children().slideToggle('slow');
$(this).children('ul').toggle();
opened = opened ? false : true;
});
लेकिन अगर आप "टॉगल" एक आइटम तब एक और आइटम दूसरे मद (नीचे स्लाइड) 300px गुणा हो जाता है नहीं (जन्म देती है) स्लाइड 300px गुणा। मैं जो हासिल करना चाहता हूं उसका एक अच्छा उदाहरण (साइट से नफरत है) http://market.weogeo.com/#/home और नीचे "टैब" है।
मेरे एचटीएमएल कोड
<ul id="#coltab">
<li>Item 1
<ul>
<li>This bit needs to toggle up</li>
</ul>
</li>
<li>Item 2
<ul>
<li>This bit needs to toggle up</li>
</ul>
</li>
etc ...
</ul>
उपयोग कर रहा है सीएसएस पक्ष
ul#coltab { position: relative' blah; blah; }
और
ul#coltab ul { display: none; position: absolute; blah; blah; }
कोई भी विचार पर?
यह अच्छा होगा अगर प्रत्येक "क्लिक" ने "क्लिक" टॉगल खोलने से पहले पिछले टॉगल को बंद कर दिया।
यहां नीचे पोस्ट किए गए लोगों का मेरा संपादन संस्करण है: डी http://jsfiddle.net/s7AD8/2/ – Cristy
@ क्रिस्टी ओह, मैं आपको नफरत करता हूं :-) जो "सही" है और मैंने जो कुछ बनाया है, लेकिन मुझे मिलता है यह सिर्फ स्लाइड टॉगल का उपयोग करने के लिए काम करने के लिए - एनिमेट की कोई ज़रूरत नहीं है - जब तक कि मुझे कुछ याद नहीं आ रहा है? –
हाँ, एनिमेट करने की कोई ज़रूरत नहीं है, मैंने अभी इसका उपयोग किया है क्योंकि नीचे पोस्ट किया गया उदाहरण इसका उपयोग करता है :)) – Cristy