jQuery简单实现导航栏根据滑动自动悬浮效果

目前流行的网站主要是一个导航栏本来是固定的,没有自动悬浮在网站的最顶部,但是当页面下滑到导航栏的位置时,开始自动悬浮。再次向上拉到导航栏的位置时,导航栏再次固定

1、引用jq

2、css定义

body {
width:100%;
height:9000px;
padding:0;
margin:0;
border:0;
}

.nav {
width:100%;
height:50px;
line-height:50px;
background:#000;
color:#fff;
text-align:Center;
}

.box {
height:800px;
line-height:800px;
text-align:center;
}
3、html调用

< !--声明一个让导航栏不在顶部的盒子 -->

<div class="box">我也是一个div</div>

<!--声明一个导航栏 -->

<div class="nav">我是导航栏</div>

4、jquery语法

$(document).ready(function(){

//首先获取导航栏距离浏览器顶部的高度

var top = $('.nav').offset().top;

//开始监控滚动栏scroll

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jQuery实现移动端左右滑动切换效果可以使用 touchstart、touchmove、touchend 事件来实现。具体步骤如下: 1. 获取要切换的元素及其宽度 ```javascript var $slider = $('.slider'); // 获取要切换的元素 var sliderWidth = $slider.width(); // 获取要切换的元素宽度 ``` 2. 监听 touchstart 事件,记录开始触摸的位置 ```javascript var startX, startY; $slider.on('touchstart', function(e) { startX = e.originalEvent.changedTouches[0].pageX; startY = e.originalEvent.changedTouches[0].pageY; }); ``` 3. 监听 touchmove 事件,计算滑动距离并实时移动元素 ```javascript var moveX, moveY; $slider.on('touchmove', function(e) { moveX = e.originalEvent.changedTouches[0].pageX; moveY = e.originalEvent.changedTouches[0].pageY; var distance = moveX - startX; // 计算滑动距离 if (Math.abs(distance) > Math.abs(moveY - startY)) { e.preventDefault(); // 阻止默认事件,避免页面跟着一起滑动 $slider.css('transform', 'translateX(' + distance + 'px)'); // 实时移动元素 } }); ``` 4. 监听 touchend 事件,根据滑动距离判断是否需要切换元素 ```javascript $slider.on('touchend', function(e) { var distance = moveX - startX; // 计算滑动距离 if (Math.abs(distance) > sliderWidth / 3) { // 判断是否需要切换元素 if (distance > 0) { // 切换到上一个元素 } else { // 切换到下一个元素 } } else { // 恢复原位 $slider.css('transform', 'translateX(0)'); } }); ``` 注意,为了避免页面跟着一起滑动,需要在 touchmove 事件中阻止默认事件(即 e.preventDefault())。另外,在移动端开发中,为了适配各种屏幕,推荐使用 rem 或 vw/vh 等单位来布局页面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值