เนื่องจากเนื้อหาของคุณต้องเป็นแบบไดนามิกคุณจึงสามารถตั้งค่าคุณสมบัติ css ของโมดอลแบบไดนามิกในshow
เหตุการณ์ของโมดอลซึ่งจะปรับขนาดโมดอลที่แทนที่ข้อกำหนดเริ่มต้น เหตุผลที่ bootstrap ใช้ความสูงสูงสุดกับเนื้อกิริยาด้วยกฎ css ดังต่อไปนี้:
.modal-body {
position: relative;
overflow-y: auto;
max-height: 400px;
padding: 15px;
}
ดังนั้นคุณสามารถเพิ่มสไตล์อินไลน์แบบไดนามิกโดยใช้css
วิธีjquery :
สำหรับการใช้ bootstrap เวอร์ชันใหม่กว่า show.bs.modal
$('#modal').on('show.bs.modal', function () {
$(this).find('.modal-body').css({
width:'auto',
height:'auto',
'max-height':'100%'
});
});
สำหรับ bootstrap เวอร์ชันเก่าให้ใช้ show
$('#modal').on('show', function () {
$(this).find('.modal-body').css({
width:'auto',
height:'auto',
'max-height':'100%'
});
});
หรือใช้กฎ css เพื่อแทนที่:
.autoModal.modal .modal-body{
max-height: 100%;
}
และเพิ่มคลาสนี้autoModal
ลงในโมดอลเป้าหมายของคุณ
เปลี่ยนเนื้อหาแบบไดนามิกในซอคุณจะเห็นโมดอลได้รับการปรับขนาดตามนั้น Demo
event names
รุ่นใหม่ของบูตดูที่มีอยู่
- show.bs.modal เหตุการณ์นี้จะเริ่มทำงานทันทีเมื่อมีการเรียกใช้วิธีการแสดงอินสแตนซ์ หากเกิดจากการคลิกองค์ประกอบที่คลิกจะพร้อมใช้งานเป็นคุณสมบัติ relatedTarget ของเหตุการณ์
- shown.bs.modal เหตุการณ์นี้จะเริ่มทำงานเมื่อผู้ใช้มองเห็นโมดอลได้ (จะรอให้การเปลี่ยน CSS เสร็จสมบูรณ์) หากเกิดจากการคลิกองค์ประกอบที่คลิกจะพร้อมใช้งานเป็นคุณสมบัติ relatedTarget ของเหตุการณ์
- hide.bs.modal เหตุการณ์นี้จะเริ่มทำงานทันทีเมื่อมีการเรียกวิธีการซ่อนอินสแตนซ์
- hidden.bs.modal เหตุการณ์นี้จะเริ่มทำงานเมื่อโมดอลเสร็จสิ้นถูกซ่อนจากผู้ใช้ (จะรอให้การเปลี่ยน CSS เสร็จสมบูรณ์)
- loaded.bs.modal เหตุการณ์นี้จะเริ่มทำงานเมื่อโมดอลโหลดเนื้อหาโดยใช้ตัวเลือกระยะไกล
modal events รองรับbootstrap เวอร์ชันเก่ากว่า
- แสดง - เหตุการณ์นี้จะเริ่มทำงานทันทีเมื่อมีการเรียกใช้วิธีการแสดงอินสแตนซ์
- แสดง - เหตุการณ์นี้จะเริ่มทำงานเมื่อผู้ใช้สามารถมองเห็นโมดอลได้ (จะรอให้การเปลี่ยน css เสร็จสมบูรณ์)
- ซ่อน - เหตุการณ์นี้จะเริ่มทำงานทันทีเมื่อมีการเรียกวิธีการซ่อนอินสแตนซ์
- ซ่อนไว้ - เหตุการณ์นี้จะเริ่มทำงานเมื่อโมดอลถูกซ่อนจากผู้ใช้เสร็จสิ้น (จะรอให้การเปลี่ยน css เสร็จสมบูรณ์)