在表单的高度期间隐藏粘滞按钮

问题描述 投票:0回答:1

我有一个网页,我使用粘滞按钮只在移动设备上使用

<div id="toBooking" class="bg-light d-lg-none d-xl-none">
<a class="btn_full" style="margin-bottom:0; background: #0072bc !important;" href="#"> <sup>$</sup> Book Now</a>
</div>

这是我的javascript

var pxBtShow = 500; // height on which the button will show
var scrollSpeed = 500; // how slow / fast you want the button to scroll to top.

$(window).scroll(function(){
 if($(window).scrollTop() >= pxBtShow){
    $("#toBooking").addClass('visible');
 } else {
    $("#toBooking").removeClass('visible');
 }
});

$("#toBooking").click(function() {
  $('html, body').animate({
    scrollTop: $("#booking").offset().top
  }, 1000);
});

和CSS

    #toBooking {
    position: fixed;
    right: 0;
    opacity: 0;
    visibility: hidden;
    bottom: 0px;
    z-index: 999;
    transition: 0.35s;
    transform: scale(0.7);
    width: 100%;
    height: 46px;
    background-color: rgba(0,0,0,.6);
    opacity: 1;
    transition: all 0.3s;
    border-radius: 50%;
    text-align: center;
    font-size: 21px;
    color: #fff;
    cursor: pointer;
}
#toBooking.visible {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}
#toBooking:after {
    content: "\e899";
    font-family: "fontello";
    position: relative;
    display: block;
    top: 50%;
    -webkit-transform: translateY(-55%);
    transform: translateY(-55%);
}

当我点击按钮时,它会将我带到预订表格。但是当我在表单上时,我希望在该表单的高度期间隐藏该按钮。

我们怎么做到这一点?

javascript jquery html css
1个回答
0
投票

你只需要添加更多逻辑ex:

$(window).scroll(function () {
    var windowScrollTop = $(window).scrollTop()
    var $form = $('#form');
    var formOffset = $form.offset();
    if (
        windowScrollTop >= pxBtShow &&
        windowScrollTop < formOffset.top &&
        windowScrollTop > formOffset.top + $form.height()
    ) {
        $("#toBooking").addClass('visible');
    } else {
        $("#toBooking").removeClass('visible');
    }
});
© www.soinside.com 2019 - 2024. All rights reserved.