• vue 置顶组件


    <template>
        <div id="backtop">
            <img
                src="@/assets/temp/top.png"
                alt="置顶"
                @click="backtop"
                v-show="totop"
                class="backtop"
            />
        </div>
    </template>
    
    <script>
    export default {
        data() {
            return {
                totop: false
            };
        },
        components: {},

        //监听滚动事件
        利用VUE写一个在控制台打印当前的scrollTop。首先,在 mounted 钩子中给window添加一个滚动滚动监听事件:

        mounted() {
            console.log(1);
            window.addEventListener("scroll", this.scrolltotop);
        },
       //
    离开该页面需要移除这个监听的事件
        destroyed() {
            window.removeEventListener("scroll", this.scrolltotop);
        },
        methods: {

          //监听回到顶部按钮距浏览器顶部的距离,滚动的距离如果大于浏览器高度时,设置 toTop 为true,否则就是false

            scrolltotop() {
                let scrollTop =
                    window.pageYOffset ||
                    document.documentElement.scrollTop ||
                    document.body.scrollTop;
                if (scrollTop > 400) {
                    this.totop = true;
                } else {
                    this.totop = false;
                }
            },
            //回到顶部 点击回到顶部按钮,让距离逐渐减少,形成上划的效果
            backtop() {
                let back = setInterval(() => {
                    if (
                        document.body.scrollTop ||
                        document.documentElement.scrollTop
                    ) {
                        document.body.scrollTop -= 100;
                        document.documentElement.scrollTop -= 100;
                    } else {
                        clearInterval(back);
                    }
                });
            }
        }
    };
    </script>
    
    <style lang="less" scoped>
    .backtop {
        position: fixed;
         30px;
        height: 30px;
        bottom: 75px;
        right: 12px;
        z-index: 100;
        opacity: 0.6;
    }
    </style>
    <template>
      <a href="javascript:;" class="toTop" @click="backTop" v-show="backToTop">
        <i class="iconfont">&#xe65d;</i>
      </a>
    </template>
  • 相关阅读:
    经典代码JSKeyword查看(M。。。$)的哦!
    django处理websocket
    产品所有者也应该是Scrum教练吗?
    google的javascript编码规范
    python 处理websocket
    [转] 虚拟座谈会:TDD有多美?
    python 数字相关
    google的python编码规范
    python 函数相关
    python推荐的模块结构
  • 原文地址:https://www.cnblogs.com/yaoling/p/14303167.html