2015-09-29 3 views
5

मैंने बूटस्ट्रैप v.3.3.5 के साथ एकाधिक modal dialog बनाया है। जब मैंने पहला modal dialog लॉन्च किया, तो दाएं काम में स्क्रॉलबार अच्छी तरह से काम कर रहा था लेकिन जब मैं दूसरा modal dialog लॉन्च करता हूं, और इसे बंद करता हूं, तो स्क्रॉलबार गायब हो जाता है।एकाधिक मोडल संवाद स्क्रॉल बार बूटस्ट्रैप v.3.3.5 अच्छी तरह से काम नहीं कर रहा है

बूटस्ट्रैप v.3.0.0 में कोई समस्या आप डेमो नीचे में देख सकते हैं नहीं है

modal dialog with bootstrap v.3.0.0

लेकिन, बूटस्ट्रैप v.3.3.5 में वहाँ समस्या मौजूद है

modal dialog with bootstrap v.3.3.5

+0

'3.0.0' तो में संस्करण के लिए अद्यतन का अधिकार काम कर रहा? स्क्रॉल बार के लिए –

+0

हाँ, मेरा उदाहरण देखें कृपया –

उत्तर

12

DEMO

के लिए कुछ कारण यह शरीर से modal-open वर्ग को हटा रहा है और यह स्क्रॉलबार गायब हो जाती है। तो यहाँ एक साफ चाल .modal के पास घटना पर कब्जा और देखें कि क्या किसी भी .modal खुला है और यदि हाँ body

$("#myModal2").on('hidden.bs.modal', function (event) { 
    if ($('.modal:visible').length) //check if any modal is open 
    { 
    $('body').addClass('modal-open');//add class to body 
    } 
}); 

अब अगर आप एक दूसरे के अंदर घोंसला बनाने से कई क्रियार्थ द्योतक है करने के लिए .modal-open वर्ग को जोड़ने के लिए है, बस $("#myModal2") की जगह $(document)

अद्यतन

हाल ही में साथ मैं जानना चाहता है कि इस के रूप में नीचे सिर्फ एक लाइन के साथ शुद्ध सीएसएस के साथ किया जा सकता है आया था:

.modal{ 
    overflow:auto !important; 
} 

UPDATED DEMO

+0

कभी भी .. हैप्पी कोडिंग .. :) –

+1

सीएसएस फिक्स मेरे लिए काम करता है। मैं प्रमाणित कर सकता हूं कि यह बूटस्ट्रैप 3.3.7 में अभी भी एक समस्या है। आसान फिक्स के लिए धन्यवाद। –

+0

@RyanGriggs कभी भी .. हैप्पी कोडिंग .. :) –

1

एक बात करते हैं, सिर्फ अपने सीएसएस करने के लिए निम्नलिखित जोड़ें:

#myModal{ 
overflow:auto !important; 
} 

आशा है कि यह मदद करता है !!

3

गतिशील रूप से जोड़ा क्रियार्थ द्योतक

$(document).on('hidden.bs.modal', '.modal', function() { 
    if ($('body').find('.modal.in').length > 0) { 
     $('body').addClass('modal-open'); 
    } 
}); 

बूटस्ट्रैप 4

$(document).on('hidden.bs.modal', '.modal', function() { 
    if ($('body').find('.modal.show').length > 0) { 
     $('body').addClass('modal-open'); 
    } 
}); 
संबंधित मुद्दे