关于前端js问题: 往下滑动隐藏,往上滑动显示,pc正常,移动端显示有问题。

JavaScript019

关于前端js问题: 往下滑动隐藏,往上滑动显示,pc正常,移动端显示有问题。,第1张

你这个问题是移动端拖动页面的时候有scroll回弹的现象,就是拖动的时候会有点弹性。也可以做delay来处理,不过感觉会卡卡的。

最好是加上到顶判断。因为这个到顶的值会小于0

<script>

    if (scrolls <= 0) { // 处理回弹

        return

    } else {

        // 要从这里开始做正事

        if (scrolls >= windowTop) {

            // balabal

        } else {

            // balabal

        }

    }

</script>

(function($) {

$.fn.huadong = function( obj, obja, time ) {

this.height($(window).height()).css({'position':'absolute', 'top':'0px', 'left' : '0px'})//首先把最外层的标签对象设置为浮动, 上边为0, 左边也为0

var left = $(obj).width()//取得左边栏的宽度

$(obj).height($(window).height()).width(0).hide()//将左边栏的高度设置为浏览器的高度, 宽度为0, 并隐藏掉!这样是为了页面载入的时候初始化

$(obja).click(function(){ //给触发按钮绑定点击事件,也就是鼠标点击触发按钮后执行的动作

$(obj).show().animate({'width':left + 'px'}, time)//把左边栏的宽度设置为原来的宽度并显示出来, 根据设定的时间慢慢展现

})

$(obj).mouseout(function(){ //绑定左边栏鼠标移开事件

$(this).animate({'width':'0px'}, time, function(){ $(this).hide()})//又把左边栏的宽度设置为0, 并且隐藏

})

}

})(jQuery)