vue页面滚动问题元素高度问题

jQuery获取元素高度

$("#divId").height(); //不包括内边距、边框或外边距
$("#divId").innerHeight();//包括内边距
$("#divId").outerHeight();//包括内边距和边框

二、

    1、Javascript:

网页可见区域宽: document.body.clientWidth
网页可见区域高: document.body.clientHeight
网页可见区域宽: document.body.offsetWidth (包括边线的宽)
网页可见区域高: document.body.offsetHeight (包括边线的高)
网页正文全文宽: document.body.scrollWidth
网页正文全文高: document.body.scrollHeight
网页被卷去的高: document.body.scrollTop
网页被卷去的左: document.body.scrollLeft
网页正文部分上: window.screenTop
网页正文部分左: window.screenLeft
屏幕分辨率的高: window.screen.height
屏幕分辨率的宽: window.screen.width
屏幕可用工作区高度: window.screen.availHeight
屏幕可用工作区宽度: window.screen.availWidth

    2、JQuery:

$(document).ready(function(){
alert($(window).height()); //浏览器当前窗口可视区域高度
alert($(document).height()); //浏览器当前窗口文档的高度
alert($(document.body).height());//浏览器当前窗口文档body的高度
alert($(document.body).outerHeight(true));//浏览器当前窗口文档body的总高度 包括border padding margin

alert($(window).width()); //浏览器当前窗口可视区域宽度
alert($(document).width());//浏览器当前窗口文档对象宽度
alert($(document.body).width());//浏览器当前窗口文档body的宽度
alert($(document.body).outerWidth(true));//浏览器当前窗口文档body的总宽度 包括border padding margin

})

 

三、窗口大小改变时

$(window).resize(function(){
   //执行代码块
});

 

四、点击返回顶部

$('.go_top').click(function(){
    if ($(window).scrollTop() > 0) {
    $("html,body").stop().animate({ scrollTop: 0 }, 200);
}

});

$(window).scroll(function(){
    var w_h = $(document).scrollTop();
    if(w_h>300){
        $('.go_top').fadeIn();
    }
    if(w_h<=300){
        $('.go_top').fadeOut();
    }
});

jQuery实现页面滚动条自动滚动到需要的位置

$('html,body').animate({scrollTop:1000},'slow');

解读代码:在载入html页面的body这一块内容中,实现滚动进行展示body的某一块内容,scrollTop方法 进行滚动1000像素

(像素越大滚动的越下去,也就是内容显示的越多)

该方法是以底部为原点 向上计算,像素越大body离底部就越远 相应的滚动条就越下去

slow 是指滚动时候的状态速度,也可以传进时间的值(单位为毫秒)!(根据自己的需求)

vue里面监听页面滚动

//页面注册滚动事件
mounted() {
        // 监听事件
        window.addEventListener("scroll", this.handleScroll);
        if (this.linePath == 1) {
            this.$refs.word.style.margin = "0.253rem 0 1.5rem";
        }
        this.btn_height = $(".iswordtop").height();
},


methods:{
	handleScroll: function() {
            let wordtop = $(".word").offset().top - $(window).scrollTop();
            console.log(wordtop );
        },
}
//页面注销滚动事件
beforeDestroy() {
        window.removeEventListener("scroll", this.handleScroll);
}

vue的页面里面只能注册一个滚动事件,并且在离开页面的时候一定要注销否则会报错

Logo

前往低代码交流专区

更多推荐