淘先锋技术网

首页 1 2 3 4 5 6 7

Vue header 悬停功能是十分实用的一种需求,在网页制作中它能为用户带来更好的交互体验,下面我们将介绍如何通过Vue框架来实现header悬停功能。

下面是主要代码:

<template>
<div>
<div class="header-container" :class="{ 'bg-color': scrollTop > height }" @scroll="handleScroll">
<!-- header内容 -->
</div>
<div class="list-container">
<!-- 列表部分 -->
</div>
</div>
</template>
<script>
export default {
data() {
return {
scrollTop: 0, // 页面滚动条位置
height: 0 // header高度
};
},
methods: {
handleScroll() {
this.scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
}
},
mounted() {
this.height = document.querySelector('.header-container').clientHeight;
}
};
</script>
<style scoped>
.header-container{
position: fixed;
top: 0;
left: 0;
right: 0;
transition: all 0.3s;
}
.bg-color{
background-color: #fff;
}
.list-container{
margin-top: 60px; // 列表距离顶部高度应该是header高度加上一定的空隙
}
</style>

这是一个简单的header悬停实现方式,主要是利用Vue的数据绑定和方法监听,然后通过CSS样式中的position: fixed来使header实现悬停效果。