簡體   English   中英

如何在不跳到頂部的情況下鎖定fancybox覆蓋?

[英]How lock fancybox overlay without jumping to the top?

我想在打開fancybox時禁用瀏覽器滾動。 下一個代碼有效:

helpers: {
   overlay: {
      locked: true 
   }
},

但是在打開花式盒子時,移動設備上的窗口會跳到頂部。 此行為取決於鎖定:真實參數。 如何鎖定覆蓋層並防止跳躍?

不同的決定,例如:

$('html').css('overflow', 'hidden')

要么

$(document.body).bind('touchmove', function(e) {
   e.preventDefault();
   e.stopPropagation();
   e.returnValue = false;
});

可以使用,但不適用於所有移動瀏覽器!

我還必須處理這個問題,這使我發瘋。 我幾乎嘗試了所有選項,搜索了關於stackoverflow的所有問題和答案,但似乎對我的ajax-lightbox無效。 我總是跳到頂部。 然后,我執行以下操作:

$(".lightboxe-fancyboxWindow").fancybox({ 
    type : 'ajax',
    href : "<?php echo $_SERVER['PHP_SELF']; ?>",
    ajax: {
        type: "POST",
        data: {     
            'data1' : information1,
            'data2' : information2
        },
    },
    autoSize: false,
    width: '60%',
    beforeShow : function() {
        $("body").css({"overflow" : "hidden", "padding-right" : "17px"});
    },
    afterClose: function () {
        $("html, body").removeAttr("style");
    },
    titleShow : false,
    helpers : { 
        overlay : {
            locked : false
        },
         title : null
    },
});

我要做的是為body fake-scrollbar添加隱藏在body標簽上的溢出和17px填充。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM