Rumah > Soal Jawab > teks badan
P粉8055354342023-08-18 22:20:41
Kod yang anda berikan nampaknya betul untuk melumpuhkan penatalan apabila modal dibuka. Walau bagaimanapun, terdapat beberapa kemungkinan punca masalah:
openModal
函数。相反,它直接操作模态框的样式。这意味着isModalOpen
变量没有被设置为true
,disableFullPageScroll
函数也没有被调用。要解决这个问题,您应该在按钮被点击时使用openModal
yang anda takrifkan dalam skrip: <button id="openModalButton" class="w3-button w3-black">打开模态框</button>
closeModal
. Ia sepatutnya kelihatan seperti ini: <span id="closeModalButton" class="w3-button w3-display-topright">×</span>
closeModal
函数没有在全局作用域中定义,但它被从HTML中调用。这可能会导致错误。要解决这个问题,您应该在全局作用域中定义closeModal
Fungsi ini tidak ditakrifkan dalam skop global, tetapi ia dipanggil dari HTML. Ini boleh menyebabkan ralat. Untuk menyelesaikan masalah ini, anda harus mentakrifkan fungsi window.closeModal = closeModal;
disableFullPageScroll
和enableFullPageScroll
preventDefault
和stopPropagation
方法可能不足以阻止所有情况下的滚动。在模态框打开时,您可能还需要将
overflow
样式设置为hidden
,并在模态框关闭时将其重置为auto
dalam tatal pengendali acara:
function disableFullPageScroll() { $.fn.fullpage.setAllowScrolling(false); $.fn.fullpage.setKeyboardScrolling(false); document.body.style.overflow = 'hidden'; } function enableFullPageScroll() { $.fn.fullpage.setAllowScrolling(true); $.fn.fullpage.setKeyboardScrolling(true); document.body.style.overflow = 'auto'; }Sila cuba cadangan ini dan beritahu saya jika ia menyelesaikan masalah anda. 🎜