2013-07-19 11 views
18
से टॉगल

मेरे HTML है:बूटस्ट्रैप संक्षिप्त करें आप, दिखाने को छिपाने के बाद टॉगल नहीं करता है या कोड

<div id="accordion-container"> 
    <div class="accordion" id="navaccordion"> 
     <div class="accordion-group"> 
      <div class="accordion-heading"> 
       <a class="accordion-toggle" data-toggle="collapse" data-parent="#navaccordion" href="#collapseMenu"> 
        <strong>My Menus</strong> 
       </a> 
      </div> 
      <div id="collapseMenu" class="accordion-body collapse in"> 
       <div class="accordion-inner"> 
        <div class="navigation" id="navigationcontainer"> 
         <span id="menutree"> 
          MenuTree 
         </span> 
        </div> 
       </div> 
      </div> 
     </div> 
     <div class="accordion-group"> 
      <div class="accordion-heading"> 
       <a class="accordion-toggle" data-toggle="collapse" data-parent="#navaccordion" href="#collapseQuickLinks"> 
        <strong>Quick Links</strong> 
       </a> 
      </div> 
      <div id="collapseQuickLinks" class="accordion-body collapse"> 
       <div class="accordion-inner"> 
        <div class="quicklinks" id="quicklinkscontainer"> 
         <span id="quicklinkslist"> 
          QuickLinks 
         </span> 
        </div> 
       </div> 
      </div> 
     </div> 
     <div class="accordion-group"> 
      <div class="accordion-heading"> 
       <a class="accordion-toggle" data-toggle="collapse" data-parent="#navaccordion" href="#collapseQueue"> 
        <strong>Queue</strong> 
       </a> 
      </div> 
      <div id="collapseQueue" class="accordion-body collapse"> 
       <div class="accordion-inner"> 
        <div class="queue" id="queuecontainer"> 
         <span id="queuetree"> 
          Queue 
         </span> 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 

मेरे उदाहरण यहाँ है: http://jsfiddle.net/pdavis68/Xut4C/2/

आप जावा स्क्रिप्ट कोड को निकाल देते हैं, तो आप देखेंगे कि पतन की टॉगल ठीक से चलती है। यदि आप "त्वरित लिंक" पर क्लिक करते हैं, तो "मेरा मेनू" बंद हो जाता है और "त्वरित लिंक" खुलता है।

यदि आप जेएस को छोड़ देते हैं, तो आप देखेंगे कि "माई मेनस" या "क्विक लिंक" खोलने से कुछ और नहीं हो सकता है, लेकिन यदि आप "कतार" खोलते हैं, तो यह अभी भी दूसरों को पतन।

यह कोई फर्क नहीं पड़ता कि अगर मैं पतन में "टॉगल", "शो" या "छुपाएं" कमांड का उपयोग करता हूं, तो यह टॉगलिंग कार्यक्षमता को तोड़ देगा।

इसके अलावा, उदाहरण में, क्या होना चाहिए (मेरे गणना के अनुसार, कम से कम) यह है कि "माई मेनस" को बंद करना चाहिए (जो यह करता है) और फिर "त्वरित लिंक" को खुले टॉगल करना चाहिए (जो इसे ऐसा नहीं करता है)

तो, 2 सवाल:।

  1. मैं कैसे प्रोग्राम के रूप में/छिपाने समूहों टॉगल कार्यक्षमता को तोड़ने के बिना दिखाते हैं?

  2. मैं चीजों को कैसे खोलूं? विकल्पों के साथ collapse() उपयोग करने के लिए

उत्तर

19

1.Try, 'parent' महत्वपूर्ण है

$("#collapseMenu").collapse({"toggle": true, 'parent': '#navaccordion'}); 
$("#collapseQuickLinks").collapse({"toggle": true, 'parent': '#navaccordion' }); 

फिडल:

  • जोड़ें: http://jsfiddle.net/hieuh25/Xut4C/6/

    2.Basically आप 2 तरीके हैं कक्षा in उस div के लिए, उदाहरण: <div id="collapseMenu" class="accordion-body collapse in"> उस div को खोलने का कारण बनता है।

  • collapse() का उपयोग 'toggle': true विकल्प के साथ, जब div बंद हो जाता है।

उम्मीद है कि यह मदद करता है।

+0

धन्यवाद! मुझे इसी की तो तलाश थी। "पेरेंट" सेट करने के लिए – Pete

+0

डिट्टो।मेरा accordion केवल हर दूसरे क्लिक घटना पर व्यवहार कर रहा था, और "पैरेंट" इसे हल किया। – mac9416

2

तुम भी <div id="collapseMenu" class="accordion-body collapse" data-parent="#navaccordion"> करने के लिए data-parent="#navaccordion" जोड़ सकते हैं और तरह .collapse({"toggle": true});

8

बिना addional कुंजी 'parent' फोन पहले एक संक्षिप्त होने तत्व के रूप में अपनी सामग्री को सक्रिय करने का प्रयास कर सकते हैं। प्रलेखन पढ़ने के दौरान मैंने इस भाग पर स्किम किया और यह वास्तव में मुझे फंस गया।

$('#myCollapsible').collapse({ 
    toggle: false 
}) 

इसे सक्रिय करने के बाद आप इसे सामान्य रूप से छुपा सकते हैं और दिखा सकते हैं।

$('#myCollapsible').collapse('hide'); 
$('#myCollapsible').collapse('show'); 

http://getbootstrap.com/javascript/#collapse-methods

+0

यह वास्तव में अजीब है लेकिन यह मेरे लिए समस्या हल हो गया। जेएस के माध्यम से सक्रिय किए बिना पतन/विस्तार बटन पर क्लिक करते समय पतन काम कर रहा था, लेकिन अगर मैं जेएस के माध्यम से पतन/विस्तार करना चाहता था तो मुझे पहले इसे एक ढहने के रूप में सक्रिय करने की आवश्यकता थी। – aeliusd

+0

इसने मेरी समस्या भी हल की। ऐसा प्रतीत होता है कि मुझे अपने accordion तत्व पर पतन() को प्रारंभिक प्रक्रिया के प्रकार के रूप में ठीक से काम करने से पहले कॉल करना था। मैंने 'पतन ({" टॉगल "कहा: झूठा, ...}) 'मेरे'