Bootstrap Modals ยังคงเพิ่มช่องว่างภายในให้กับร่างกายหลังจากปิดแล้ว


101

ฉันใช้ bootstrap และ Parse framework เพื่อสร้าง webapp ขนาดเล็ก แต่วิธีการ Bootstrap เหล่านั้นยังคงเพิ่มช่องว่างภายในให้กับร่างกายหลังจากปิดแล้ว วิธีแก้ปัญหานี้?

ฉันพยายามใส่รหัสนี้ในจาวาสคริปต์ของฉัน:

$('.modal').on('hide.bs.modal', function (e) {
    $("element.style").css("padding-right","0");
});


แต่มันไม่ได้ผล ไม่มีใครรู้วิธีแก้ไขปัญหานี้หรือไม่?

รหัสของฉัน:

        <button type="button" class="btn btn-lg btn-default" data-toggle="modal" data-target="#loginModal">Admin panel</button>

         <div id="loginModal" class="modal fade" role="dialog">
                  <div class="modal-dialog modal-sm">

                    <!-- Modal content -->
                    <div class="modal-content">

                      <!-- header -->
                      <div class="modal-header"> 
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                        <h4 class="modal-title">Login</h4>
                      </div>

                      <!-- body -->
                      <div class="modal-body text-center" >
                          <input class='form-control' type="text" id="userName" placeholder="Username" ng-model='username'>
                          <input class='form-control' type="password" id="password" placeholder="Password" ng-model='password'>

                      <div class="modal-footer">
                        <button type="button" class="btn btn-default" id="loginButton" ng-click="goToAdminPanel()">Login</button>
                        <button type="button" class="btn btn-default" data-dismiss="modal" id="closeButton">Close</button>
                      </div>

                    </div>

                 </div>
                </div>
           </div>

        <div id="adminPanel" class="modal fade" role="dialog">
                  <div class="modal-dialog modal-lg">

                    <!-- Modal content -->
                    <div class="modal-content">

                      <!-- header -->
                      <div class="modal-header"> 
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                        <h4 class="modal-title">Admin Panel</h4>
                      </div>

                      <!-- body -->
                      <div class="modal-body" >

                        </div>

                      <div class="modal-footer">
                        <button type="button" class="btn btn-default" id="saveButton">Save</button>

                        <button type="button" class="btn btn-default" data-dismiss="modal" id="closeButton">Close</button>



                    </div>

                 </div>
                </div>
           </div>


    $scope.goToAdminPanel = function(){
    Parse.User.logIn($scope.username,$scope.password,{
        success: function(user){
            $('#loginModal').modal('hide');
            $('#adminPanel').modal();
        },
        error: function(user, error) {
            alert('Wrong username and/or password');
        }
    });
}

ฉันใช้ bootstrap และ Parse framework เพื่อสร้าง webapp ขนาดเล็ก แต่วิธีการ Bootstrap เหล่านั้นยังคงเพิ่มช่องว่างภายในให้กับร่างกายหลังจากปิดแล้ว วิธีแก้ปัญหานี้?


3
ไม่เพียง แต่มันเพิ่มpadding-rightแต่ยังเพิ่มระดับเป็น modal-openสำหรับoverflow: hiddenเพียงสำหรับการซ่อนแถบเลื่อน
vivekkupadhyay

@vivekkupadhyay สวัสดีฉันพยายามที่จะลบล้างmodal-openด้วยpadding-right:0 !important;แต่มันไม่ได้ผลคุณรู้ไหมว่าทำไม?
phuwin

โปรดตรวจสอบคำตอบของฉันด้านล่างมันช่วยคุณได้อย่างแน่นอน
vivekkupadhyay

คุณเกือบจะได้รับมัน คุณกำลังเริ่มการpadding-rightอัปเดตคุณสมบัติ css ในเหตุการณ์ที่ถูกต้อง แต่คุณกำลังเริ่มการทำงานในองค์ประกอบที่ไม่ถูกต้อง จำเป็นต้องยิงใส่bodyองค์ประกอบ โปรดตรวจสอบคำตอบของฉันด้านล่าง
Sam Malayek

คำตอบ:


63

นี่อาจเป็นความผิดพลาดจากโมดอล Bootstrap จากการทดสอบของฉันดูเหมือนว่าปัญหา#adminPanelกำลังเริ่มต้นในขณะที่#loginModalยังไม่ถูกปิดทั้งหมด วิธีการแก้ปัญหาสามารถลบภาพเคลื่อนไหวโดยการลบfadeชั้นบน#adminPanelและ#loginModalหรือตั้งค่าหมดเวลา (~ 500ms) $('#adminPanel').modal();ก่อนที่จะเรียก หวังว่านี่จะช่วยได้


11
ฉันลบชั้นเรียน.fadeออก#loginModalและได้ผล
phuwin

9
จะเกิดอะไรขึ้นถ้าฉันต้องการแก้ไขปัญหานี้และรักษาโมดอลแอนิเมชันในเวลาเดียวกัน
Leonardo Montenegro

@LeonardoMontenegro ฉันต้องการสิ่งนี้เช่นกันและเมื่อเร็ว ๆ นี้ฉันยังโพสต์คำถามเดียวกันว่าปัญหาคือภาพเคลื่อนไหวถูกลบออก แต่ฉันแก้ไขได้โดยการลบคลาสจางก่อนที่จะซ่อนและเพิ่มอีกครั้งหลังจากนั้นการซ่อนก็ใช้งานได้แม้ว่าจะเป็นวิธีแก้ปัญหาที่ไม่เหมาะสม วิธีแก้ปัญหาเว้นแต่ bootstrap จะแก้ไขในไฟล์นั้นเอง
Kramer

121

ฉันเพิ่งใช้ css fix ด้านล่างและมันใช้งานได้สำหรับฉัน

body { padding-right: 0 !important }

2
คุณมีคุณสมบัติ css ที่ถูกต้อง แต่สิ่งนี้จำเป็นต้องเริ่มทำงานในhide.bs.modalเหตุการณ์ bootstrap โปรดตรวจสอบคำตอบของฉันด้านล่าง
Sam Malayek

59
.modal-open {
    padding-right: 0px !important;
}

เพิ่งเปลี่ยนเป็น

.modal {
    padding-right: 0px !important;
}

7
นี่คือคำตอบที่ถูกต้องอย่างแท้จริง - "อย่าใช้คุณลักษณะจาง" เป็นการประนีประนอมไม่ใช่วิธีแก้ปัญหา
Tasgall

1
ฉันทำสิ่งเดียวกัน แต่อาจจำเป็นต้องเพิ่ม "overflow: auto! important" ด้วยเพราะเมื่อโมดอลแสดงแถบเลื่อนจะถูกซ่อนด้วย
Jaigus

ฉันใช้ตัวเลือก ".modal.fade.show" เพื่อกำหนดเป้าหมายโมดอลทั้งหมดของฉันด้วยคลาสเฟด
Andrew Schultz

การเพิ่มรูปแบบเดียวกันลงใน. modal.fade.show ก็ใช้ได้เช่นกัน
Rami Zebian

ขอบคุณ! ฉันต้องการทั้งสองอย่างเพราะทั้งmodalแผงควบคุมและbody.modal-openมีช่องว่างภายใน แต่สิ่งนี้แก้ไขได้ดี
Oliver Schimmer

20

โซลูชัน css บริสุทธิ์ที่ช่วยให้การทำงานของ bootstrap ตามที่ควรจะเป็น

body:not(.modal-open){
  padding-right: 0px !important;
}

ปัญหาเกิดจากฟังก์ชันใน bootstrap jQuery ที่เพิ่มช่องว่างด้านขวาเล็กน้อยเมื่อหน้าต่างโมดอลเปิดขึ้นหากมีแถบเลื่อนบนหน้า ซึ่งจะหยุดเนื้อหาในร่างกายของคุณที่ขยับไปมาเมื่อโมดอลเปิดขึ้นและเป็นคุณสมบัติที่ดี แต่มันทำให้เกิดข้อผิดพลาดนี้

วิธีแก้ปัญหาอื่น ๆ อีกมากมายที่ให้ไว้ที่นี่จะทำลายคุณสมบัตินั้นและทำให้เนื้อหาของคุณเปลี่ยนไปเล็กน้อยเกี่ยวกับเวลาที่โมดอลเปิดขึ้น โซลูชันนี้จะรักษาคุณสมบัติของโมดอล bootstrap ไม่ให้เปลี่ยนเนื้อหาไปรอบ ๆ แต่แก้ไขข้อบกพร่อง


1
ฉันไม่รู้ว่าทำไมใครบางคนถึงไม่ต้องการโซลูชัน CSS ฉันไม่ต้องการโซลูชัน JS อันนี้ก็ดูดี
Csaba Toth

1
ฉันต้องการสิ่งนี้เพราะถ้าฉันยกเลิก Modal ( หลังจาก Asyc-Postback ภายใน Modal) มันจะยังคงมีช่องว่างที่แปลก ๆ อย่างไรก็ตามฉันยังต้องการคำตอบของ @Benjamin Oats ด้วยเช่นกันสำหรับการทำงานทั้งหมดเมื่อฉันมีแถบเลื่อนบนหน้า
MikeTeeVee

17

หากคุณกังวลมากขึ้นเกี่ยวpadding-rightกับสิ่งที่เกี่ยวข้องคุณสามารถทำได้

jQuery :

$('#loginModal').on('show.bs.modal', function (e) {
     $('body').addClass('test');
});

สิ่งนี้จะaddClassเป็นของคุณbodyแล้วใช้สิ่งนี้

CSS :

.test[style] {
     padding-right:0 !important;
 }

padding-rightและสิ่งนี้จะช่วยให้คุณได้รับการกำจัด

แต่ถ้าคุณกังวลเกี่ยวกับการซ่อนscrollคุณต้องเพิ่มสิ่งนี้ด้วย:

CSS :

.test.modal-open {
    overflow: auto;
 }

นี่คือJSFiddle

โปรดดูมันจะทำเคล็ดลับสำหรับคุณ


ดูเหมือนจะไม่ได้ผล หรือฉันทำอะไรผิด มันก็ยังคงเพิ่มpadding-rightการbodyและเพิ่มจำนวนpadding-rightโดย 15px แต่ละครั้งที่ผมปิด Admin Panel
phuwin

ฉันเพิ่งตรวจสอบลิงก์ของคุณดูเหมือนว่าโค้ดของคุณจะไม่ทำงานเนื่องจากไม่ได้$(document).ready(function(){พยายามใส่โค้ดของคุณไว้ข้างใน
vivekkupadhyay

ลองใส่การแจ้งเตือนภายในรหัสของคุณจากนั้นคุณสามารถตรวจสอบได้ว่ารหัสของคุณไม่ทำงาน มันทำงานได้ดีกับซอและจะทำงานบนเพจของคุณด้วยก็ต่อเมื่อคุณใช้มันตามนั้น
vivekkupadhyay

ด้วยเหตุผลรหัสไม่ทำงานเมื่อมีการแสดงโมดอล
phuwin

1
@vivekkupadhyay ขอบคุณมากสำหรับความพยายามของคุณ ขอให้มีความสุขในวันนี้
phuwin

13

เพียงแค่เปิด bootstrap.min.css

ค้นหาบรรทัดนี้ (ค่าเริ่มต้น)

.modal-open{overflow:hidden;}

และเปลี่ยนเป็น

.modal-open{overflow:auto;padding-right:0 !important;}

มันจะใช้ได้กับทุกโมดอลของไซต์ คุณสามารถทำ overflow: auto; หากคุณต้องการให้แถบเลื่อนเหมือนเดิมในขณะที่เปิดกล่องโต้ตอบโมดอล


@ อโศกคุณช่วยอธิบายสาเหตุของปัญหาให้ละเอียดได้ไหม
เพื่อน

7
วิธีแก้ปัญหานี้ชี้ให้ฉันไปในทิศทางที่ถูกต้อง แต่แทนที่จะแก้ไข bootstrap.min.css ฉันใส่. modal-open {overflow: auto; padding-right: 0! important;} ในสไตล์ชีตธีมหลักของฉันและมันก็ใช้ได้!
Pratyush Deb

3
อย่าแก้ไข css ของ bootstrap โดยตรง เพิ่มการแทนที่ลงใน css ในสไตล์ชีตของคุณเองเสมอ เหมือนที่ @PratyushDeb แนะนำ
dotnetengineer

นี่ไม่ใช่วิธีแก้ปัญหาที่ยอดเยี่ยมเนื่องจากอนุญาตให้เลื่อนเนื้อหาที่อยู่เบื้องหลังโมดอลได้ โมดอลจะทำให้เนื้อหานั้นเป็นสีเทาเนื่องจากผู้ใช้ควรจะโต้ตอบกับเนื้อหานั้นเท่านั้น
ubiquibacon

นี่ควรเป็นคำตอบที่น่าเชื่อถือที่สุด ขอบคุณ
Hasnat Babur

11

ฉันมีปัญหาเดียวกันนี้มาเป็นเวลานานมาก ไม่มีคำตอบใดที่ได้ผล! แต่ต่อไปนี้แก้ไขได้!

$(document.body).on('hide.bs.modal,hidden.bs.modal', function () {
    $('body').css('padding-right','0');
});

มีสองเหตุการณ์ที่ไฟบนปิดกิริยาเป็นครั้งแรกมันเป็นแล้วมันเป็นhide.bs.modal hidden.bs.modalคุณควรจะใช้เพียงอันเดียว


3
มันไม่ได้ผลสำหรับฉันเมื่อฉันเพิ่มผู้ฟังสำหรับทั้งสองhide.bs.modalและhidden.bs.modal. แต่ทำงานได้อย่างสมบูรณ์เมื่อฉันลบออกhide.bs.modalจากผู้ฟัง :)
HariV

ถึงผู้มีสิทธิเลือกตั้ง: โปรดแสดงความคิดเห็นเชิงสร้างสรรค์เพื่อปรับปรุงคำตอบนี้
Sam Malayek

3

แก้ไขง่าย

เพิ่มชั้นเรียนนี้

.modal-open {
    overflow: hidden;
    padding-right: 0 !important;
}

มันเป็นการแทนที่ แต่ใช้งานได้


1
คลาสนี้รวมกับคำตอบที่โพสต์โดย @Chasmani ทำให้ฉันสามารถแก้ปัญหาได้ทั้งหมด +1 เมื่อพูดว่า " เพิ่มชั้นเรียนนี้ " มันบ้ามากเมื่ออ่านคำตอบของทุกคนที่นี่โดยแนะนำให้แทนที่ไฟล์ Bootstrap.css ปล่อยให้ไฟล์นั้นอยู่คนเดียวและมีไฟล์ CSS ของคุณเองที่คุณใช้ " Bootstrap Overrides " สิ่งนี้มีความสำคัญดังนั้นคุณจึงสามารถจัดทำเอกสารทั้งหมดไว้ในที่เดียวไม่ให้สูญหายเมื่ออัปเดต / อัปเกรด Bootstrap และตรวจสอบ (เพื่อดูว่าคุณยังต้องการวิธีแก้ไขปัญหาหรือไม่) หลังจากอัปเกรดเป็นเวอร์ชัน Bootstrap ใหม่
MikeTeeVee

1
ฉันยอมรับ @MikeTeeVee ว่าคุณไม่ควรแก้ไข bootstrap css อย่างแน่นอน ฉันไม่ได้รวมคำตอบนั้นไว้ในคำตอบของฉันเพราะฉันคิดว่ามันอยู่นอกขอบเขตเล็กน้อยในการตอบคำถามนี้
chasmani

2

ฉันเพียงแค่ออกระดับและเปลี่ยนผลระดับจางด้วยfade animation.cssฉันหวังว่านี่จะช่วยได้


2

removeAttr ไม่ทำงานคุณจะลบคุณสมบัติ CSS เช่นนี้:

        $('.modal').on('hide.bs.modal', function (e) {
            e.stopPropagation();
            $('body').css('padding-right','');
        }); 

โดยไม่มีค่าคุณสมบัติคุณสมบัติจะถูกลบออก


2

ฉันกำลังโหลด bootstrap 3.3.0 CSS เริ่มต้นและมีปัญหาคล้ายกัน แก้ไขได้โดยการเพิ่ม CSS นี้:

body.modal-open { overflow:inherit; padding-right:inherit !important; }

ที่สำคัญคือเนื่องจาก bootstrap modal javascript เพิ่มช่องว่างภายใน 15px ไปทางขวาโดยใช้โปรแกรม ฉันเดาว่ามันเพื่อชดเชยแถบเลื่อน แต่ฉันไม่ต้องการอย่างนั้น



1

ฉันมีปัญหาเดียวกันกับ Bootstrap 3.3.7 และวิธีแก้ปัญหาสำหรับ navbar คงที่: การเพิ่มสไตล์นี้ใน css ที่คุณกำหนดเอง

.modal-open {
    padding-right: 0px !important;
    overflow-y: scroll;
}

มันจะทำให้โมดอลของคุณแสดงในขณะที่หน้าต่างเลื่อนยังทำงานอยู่ ขอบคุณหวังว่านี่จะช่วยคุณได้เช่นกัน


1

ฉันรู้ว่านี่เป็นคำถามเก่า แต่ไม่มีคำตอบใดจากที่นี่ได้ลบปัญหาในสถานการณ์ที่คล้ายกันของฉันและฉันคิดว่ามันจะเป็นประโยชน์สำหรับนักพัฒนาบางคนในการอ่านวิธีแก้ปัญหาของฉันด้วย

ฉันใช้เพื่อเพิ่ม CSS ให้กับร่างกายเมื่อมีการเปิดโมดอลในเว็บไซต์ที่ยังคงใช้ bootstrap 3

body.modal-open{
            padding-right: 0!important;
            overflow-y:scroll;
            position: fixed;
        }

1

โซลูชันของฉันไม่ต้องการ CSS เพิ่มเติมใด ๆ

ตามที่ @Orland ชี้ไว้เหตุการณ์หนึ่งยังคงเกิดขึ้นเมื่ออีกเหตุการณ์เริ่มต้น วิธีแก้ปัญหาของฉันคือการเริ่มต้นเหตุการณ์ที่สอง (แสดงadminPanelโมดอล) เฉพาะเมื่อเหตุการณ์แรกเสร็จสิ้น (การซ่อนloginModalโมดอล)

คุณสามารถทำได้โดยแนบผู้ฟังเข้ากับhidden.bs.modalเหตุการณ์ของloginModalกิริยาของคุณดังต่อไปนี้:

$('#loginModal').on('hidden.bs.modal', function (event) {
    $('#adminPanel').modal('show');
}

และเมื่อจำเป็นเพียงแค่ซ่อนloginModalโมดอล

$('#loginModal').modal('hide');

ของ couse คุณสามารถใช้ตรรกะของคุณเองในฟังเพื่อตัดสินใจที่จะแสดงหรือไม่แสดงadminPanelกิริยา

คุณสามารถได้รับข้อมูลเพิ่มเติมเกี่ยวกับเงินทุน Modal กิจกรรมที่นี่

โชคดี.


1

รุ่น Bootstrap จะเพิ่มช่องว่างให้กับร่างกายหากร่างกายล้น

ใน bootstrap 3.3.6 (เวอร์ชันที่ฉันใช้) นี่คือฟังก์ชั่นที่รับผิดชอบในการเพิ่มช่องว่างภายในให้กับองค์ประกอบของร่างกาย: https://github.com/twbs/bootstrap/blob/v3.3.6/dist/js /bootstrap.js#L1180

วิธีแก้ปัญหาอย่างรวดเร็วคือการเขียนทับฟังก์ชันนั้นหลังจากเรียกไฟล์ bootstrap.js:

$.fn.modal.Constructor.prototype.setScrollbar = function () { };

สิ่งนี้ช่วยแก้ปัญหาให้ฉันได้



1

นี่คือสิ่งที่ใช้ได้ผลสำหรับฉัน:

body.modal-open {
    overflow: auto !important;
}

// Bootstrap uses JS to set the element style so you can
// override those styles like this
body.modal-open[style] {
    padding-right: 0px !important;
}

1
ทำงานใน Chrome! ขอบคุณ.
Gene Kelly

0

เพียงแค่ลบออกdata-targetจากปุ่มและโหลดโมดอลโดยใช้ jQuery

<button id='myBtn' data-toggle='modal'>open modal</button>

jQuery:

$("#myBtn").modal('show');

0

ฉันขุดเข้าไปใน bootstrap javascript และพบว่ารหัส Modal ตั้งค่าช่องว่างที่ถูกต้องในฟังก์ชันที่เรียกว่าadjustDialog()ซึ่งกำหนดไว้ในต้นแบบ Modal และเปิดเผยบน jQuery การวางโค้ดต่อไปนี้ไว้ที่ใดที่หนึ่งเพื่อแทนที่ฟังก์ชันนี้เพื่อไม่ทำอะไรเลยเป็นการหลอกลวงสำหรับฉัน (แม้ว่าฉันจะไม่รู้ว่าผลของการไม่ตั้งค่านี้เป็นอย่างไร !!)

$.fn.modal.Constructor.prototype.adjustDialog = function () { };




0

ฉันมีปัญหาเดียวกันกับการใช้ modals และ ajax เป็นเพราะไฟล์ JS ถูกอ้างถึงสองครั้งทั้งในหน้าแรกและในหน้าที่เรียกโดย ajax ดังนั้นเมื่อปิดโมดอลจึงเรียกเหตุการณ์ JS สองครั้งซึ่งโดยค่าเริ่มต้นจะเพิ่มช่องว่างด้านขวาเป็น 17px


0
body {
    padding-right: 0 !important;
    overflow-y: scroll!important;
}

ทำงานให้ฉัน โปรดทราบว่าแถบเลื่อนถูกบังคับในร่างกาย แต่ถ้าคุณมีหน้า "เลื่อน" อยู่แล้วก็ไม่เป็นไร (?)


0
$('.modal').on('hide.bs.modal,hidden.bs.modal', function () {
 setTimeout(function(){
  $('body').css('padding-right',0);
 },1000);
});

ลองทำตามนี้

มันจะเพิ่มช่องว่างในด้านขวา 0px ให้กับร่างกายหลังจากปิดกิริยาแล้ว


0

มันเกิดขึ้นเมื่อคุณเปิดโมดอลที่โมดอลก่อนหน้านี้ยังไม่ปิดสนิท หากต้องการแก้ไขเพียงแค่เปิดโมดอลใหม่ในเวลาที่โมดอลทั้งหมดปิดสนิทให้ตรวจสอบรหัสด้านล่าง:

  showModal() {
    let closeModal = $('#your-modal');

    closeModal.modal('hide');
    closeModal.on('hidden.bs.modal', function() {
      $('#new-open-modal').modal('show');
    });
  }

0

ตอนนี้ฉันเก่าแล้วและโซลูชันทั้งหมดที่มีให้ที่นี่อาจใช้งานได้ ฉันเพิ่งเพิ่มสิ่งใหม่ ๆ ในกรณีที่สามารถช่วยใครบางคนได้: ฉันมีปัญหาเดียวกันและสังเกตเห็นว่าการเปิดโมดอลกำลังเพิ่มขอบขวาให้กับ sidenav ของฉัน (อาจเป็นมรดกจากการเพิ่มช่องว่างภายในร่างกาย) การเพิ่ม {margin-right: 0! important;} ให้กับ sidenav ของฉันได้เคล็ดลับ


-1

(Bootstrap v3.3.7) จากตัวตรวจสอบเบราว์เซอร์ของฉันฉันเห็นว่าสิ่งนี้ถูกตั้งค่าโดยตรงในคุณสมบัติสไตล์องค์ประกอบแม่มดจะแทนที่คุณสมบัติของคลาส

ฉันพยายาม 'รีเซ็ต' ค่าpaddig-rightเมื่อโมดอลแสดงด้วย:

$("#myModal").on('shown.bs.modal', function(){
    $(this).css({paddingRight:""});
});

แต่จะกลับมาทันทีที่ปรับขนาดหน้าต่าง :( (น่าจะเป็นจากสคริปต์ pluggin)

วิธีนี้ใช้ได้ผลสำหรับฉัน:

var modal_needfix=true;
$("#myModal").on('shown.bs.modal', function(){
    var modalscope=$(this);
    modalscope.css({paddingRight:""});
    if(modal_needfix){
        window.addEventListener("resize",function(){
            requestAnimationFrame(function(){// be sure to act after the pluggin script
                modalscope.css({paddingRight:""});
            });
        });
        modal_needfix=false;
    }
});

-1

ดังที่ @Orland กล่าวว่าหากคุณใช้เอฟเฟกต์บางอย่างเช่นจางเราจำเป็นต้องรอก่อนที่จะแสดงโมดอลนี่เป็นบิตที่แฮ็ก แต่จะทำเคล็ดลับ

function defer(fn, time) {
    return function () {
        var args = arguments,
            context = this;

        setTimeout(function () {
            fn.apply(context, args);
        }, time);
    };
}

$.fn.modal.Constructor.prototype.show = defer($.fn.modal.Constructor.prototype.show, 350);

-2

ฉันหวังว่ายังมีใครบางคนที่ต้องการคำตอบนี้ มีฟังก์ชั่นที่เรียกว่า resetScrollbar () ใน bootstrap.js ด้วยเหตุผลโง่ ๆ นักพัฒนาจึงตัดสินใจเพิ่มขนาดแถบเลื่อนลงในช่องว่างภายในของร่างกาย ดังนั้นในทางเทคนิคหากคุณตั้งค่าช่องว่างด้านขวาเป็นสตริงว่างก็จะแก้ไขปัญหาได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.