我有一个 Bootstrap 模式弹出窗口,它会在单击“播放”按钮时显示。但是,当它出现时,导航似乎向右移动了一点。我不明白为什么。
JS 在点击时触发弹出窗口:
$(document).ready(function () {
var url = $("BetterConnect").attr("src");
$("#BetterConnect").on("hide.bs.modal", function () {
$("#BetterConnect").attr("src", "");
});
$("#BetterConnect").on("show.bs.modal", function () {
$("#BetterConnect").attr("src", url);
});
});
单击弹出窗口后,它似乎正在向 body 标签添加 padding-right: 17px; 的内联样式。所以我创建了一个 JS 的小片段,所以如果 body 标签有类“modal-open”,然后添加填充样式:0。但是,它抛出这个错误,我不明白为什么!
错误:
caught TypeError: Cannot read properties of null (reading 'classList')
HTML 代码屏幕截图,其中添加 padding-right:17px 当
modal-open
类出现时:
将填充设置为 0 的代码,因此不会发生移位:
var bodyTag = document.querySelector("body");
if (bodyTag.classList.contains(".modal-open")) {
body.style.padding = "0";
}
知道为什么我在这么简单的代码片段上会收到这个错误吗?或者大家有什么更好的建议吗?