常见的效果 ---吸顶

吸顶效果是比较常见的效果之一,所以是每个初学者要掌握的内容
吸顶效果可以用多种方法实现 在此 用JQuery来实现
先在这里插入代码片
现将html代码和css代码写出

.header{
	width:100%;
	height:200px;
	background-color:red;
}
.nav{
	height:90px;
	background-color:pink;
}
.content{
	height:9999px;
	background-color:#00f;
}
.footer{
	height:90px;
	background-color:red;
}
.fixed{
	padding-top:90px;  /* 定位之后脱离文档里,防止下方元素与自身重叠 所以加padding值*/
}
.fixed .nav{
	position:fixed;
	left:0;
	width:100%;
	top:0;
}
<div class="header">header</div>
<div class="nav">nav</div>
<div class="content">content</div>
<div class="footer">footer</div>

下面写入jQuery代码

//引入jQuery
<script src ="./js/jQuery-3.3.1.js"></script>
<script>
	$(function(){
		var str=$(".nav").offset().top;//获取nav到文档顶部的距离
		$(window).scroll(function(){
			var ser=$(window).scrollTop();//获取滚动条滚动的距离
		if(ser>=str){ //判断二者之间距离大小
			$("body").addClass("fixed");//添加类fixed,使nav定位到顶部
		}else{
			$("body").removeClass("fixed");//删除类fixed
		}
})
})
</script>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Taro-Vue2以及Vue2的吸顶效果,你可以通过以下步骤来实现: 1. 首先,在需要实现吸顶效果的组件中,添加一个固定定位的容器,用于承载需要吸顶的内容。可以使用`position: fixed`样式属性来实现。 2. 在组件的`data`选项中定义一个变量,用于表示当前是否需要吸顶。例如,可以定义一个名为`isSticky`的变量,并初始化为`false`。 3. 在组件的`mounted`生命周期钩子中,监听滚动事件,并根据滚动位置来动态更新`isSticky`变量的值。可以使用`window.addEventListener('scroll', handler)`来监听滚动事件,其中`handler`是一个函数,在该函数中可以通过`window.pageYOffset`获取当前滚动的垂直偏移量。 4. 在模板中,根据`isSticky`变量的值来决定是否添加一个类名或样式,以实现吸顶效果。例如,可以使用条件渲染和绑定class的方式来实现。当`isSticky`为`true`时,添加一个类名或样式,将容器固定在页面顶部。 下面是一个简单的示例代码: ```vue <template> <div> <div :class="{'sticky': isSticky}"> <!-- 吸顶内容 --> </div> <!-- 其他内容 --> </div> </template> <script> export default { data() { return { isSticky: false }; }, mounted() { window.addEventListener('scroll', this.handleScroll); }, methods: { handleScroll() { this.isSticky = window.pageYOffset > 0; } } }; </script> <style> .sticky { position: fixed; top: 0; left: 0; width: 100%; /* 添加其他样式 */ } </style> ``` 在上述示例代码中,当页面滚动时,根据滚动的垂直偏移量是否大于0,来判断是否需要实现吸顶效果。当滚动偏移量大于0时,即页面开始向下滚动时,吸顶内容会固定在页面顶部。你可以根据实际需求修改样式和逻辑。希望对你有所帮助!如有疑问,请继续提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值