广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >JS如何监听滚动和id自动定位滚动
  • 121
分享到

JS如何监听滚动和id自动定位滚动

2024-04-02 19:04:59 121人浏览 独家记忆
摘要

这篇文章主要介绍了js如何监听滚动和id自动定位滚动,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。本文主要介绍原生JS进行滚动监听和id定位

这篇文章主要介绍了js如何监听滚动和id自动定位滚动,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

本文主要介绍原生JS进行滚动监听和id定位滚动,与效果锚点类似,适用于Vue

关键性代码如下:

var scroll = document.documentElement.scrollTop || document.body.scrollTop; //获取屏幕距离顶部的距离

.js // 下述方法是引入mui+vue的案例 ,展示代码为methods里面的方法

init:function(){
  doc.addEventListener("scroll",function(){ // 实时监听,如果是iOS需要做300ms延迟,否则点击索引的时候,对象距离顶部的高度不够,会出现闪动的效果,体验感不佳
    if(!noScroll){
      var appealDo = vm.$el.querySelector("#appealDo").offsetTop- 45; //获取#appealDo距离顶部的距离
      var appealComm = vm.$el.querySelector("#appealComm").offsetTop- 45; //获取#appealComm距离顶部的距离
      var scrollTop = doc.body.scrollTop || doc.documentElement.scrollTop; //获取屏幕距离顶部的距离
      if(scrollTop <= appealDo){
        vm.activeIdx = 0; // activeIdx 是表示高亮,用作顶栏菜单
      }else if(scrollTop > appealDo && scrollTop <= appealComm){
        vm.activeIdx = 1;
      }else if(scrollTop > appealComm){
        vm.activeIdx = 2;
      }
    }
    noScroll = false;
  });
},

toggleTypes:function(idx){
  noScroll = true;
  if (vm.activeIdx != idx) {
    if (idx === 0) {
      doc.body.scrollTop = 0;
      doc.documentElement.scrollTop = 0;
    }else if(idx === 1){
      vm.$nextTick(function(){
        doTop = vm.$el.querySelector("#appealDo").offsetTop - 45;
        doc.body.scrollTop = doTop;
        doc.documentElement.scrollTop = doTop;
      });
    }else{
      vm.$nextTick(function(){
        doTop = vm.$el.querySelector("#appealComm").offsetTop - 45;
        doc.body.scrollTop = doTop;
        doc.documentElement.scrollTop = doTop;
      });
    }
    vm.activeIdx = idx;
  }
},

在VUE脚手架的项目里面可以这样操作,下述案例实现的是做高度监听控制顶部菜单的透明度变化

mounted() {
  window.addEventListener('scroll', this.menu)
},
methods: {
  menu() {
    this.scroll = document.documentElement.scrollTop || document.body.scrollTop;
    var opacity = this.scroll / 44;
    if (opacity <= 1) {
      this.$nextTick(() => {
        this.opacity = opacity
      });
    } else {
      this.opacity = 1
    }

  }
 }

感谢你能够认真阅读完这篇文章,希望小编分享的“JS如何监听滚动和id自动定位滚动”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网VUE频道,更多相关知识等着你来学习!

--结束END--

本文标题: JS如何监听滚动和id自动定位滚动

本文链接: https://www.lsjlt.com/news/75830.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JS如何监听滚动和id自动定位滚动
    这篇文章主要介绍了JS如何监听滚动和id自动定位滚动,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。本文主要介绍原生JS进行滚动监听和id定位...
    99+
    2022-10-19
  • vue监听滚动事件如何实现滚动监听
    这篇文章主要为大家展示了“vue监听滚动事件如何实现滚动监听”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue监听滚动事件如何实现滚动监听”这篇文章吧。在vu...
    99+
    2022-10-19
  • uniapp中如何监听滚动事件
    随着移动端技术的发展,让APP具有更好的用户体验已经成为了开发人员重要的任务之一。在设计APP时,实现滚动效果可能是一个选择,而uniapp则是一个支持这一功能的框架。在本文中,我将探讨如何在uniapp中实现滚动效果,以及如何监听滚动事件...
    99+
    2023-05-14
  • js如何监听html页面的上下滚动事件
    这篇文章将为大家详细讲解有关js如何监听html页面的上下滚动事件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。最近在一个项目中,在写前端页面的时候,想像以前做Andro...
    99+
    2022-10-19
  • vue如何监听滚动事件实现锚点链接平滑滚动
    这篇文章将为大家详细讲解有关vue如何监听滚动事件实现锚点链接平滑滚动,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。基于vue监听滚动事件,实现锚点链接平滑滚动近日在做一...
    99+
    2022-10-19
  • vue如何监听滚动条到底部
    这篇文章主要介绍“vue如何监听滚动条到底部”,在日常操作中,相信很多人在vue如何监听滚动条到底部问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue如何监听滚动条到底部”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-07-04
  • 如何监听element-ui table滚动事件
    这篇文章主要为大家展示了“如何监听element-ui table滚动事件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何监听element-ui table...
    99+
    2022-10-19
  • 如何使用vue监听页面中某个div的滚动事件并判断滚动位置
    这篇文章主要介绍如何使用vue监听页面中某个div的滚动事件并判断滚动位置,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!  在开发中常常会遇到这样一个vue页面,页面分为左右两部分,左边是目录树,...
    99+
    2023-06-29
  • Android自定义viewgroup可滚动布局 GestureDetector手势监听(5)
    这篇效果和上一篇://www.jb51.net/article/100638.htm的效果是一样的,但是不再在OnTouchEvent中写代码,而是使用系统自带的类Gestur...
    99+
    2022-06-06
    监听 布局 Android
  • Jquery如何实现滚动监听和附加导航
    这篇文章给大家分享的是有关Jquery如何实现滚动监听和附加导航的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。导航思路:设定nav导航的类。设定索引值。点击导航内容,导航的索引和...
    99+
    2022-10-19
  • JS如何实现自定义滚动条效果
    这篇文章给大家分享的是有关JS如何实现自定义滚动条效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下<head>  <meta ...
    99+
    2022-10-19
  • 原生js如何封装自定义滚动条
    这篇文章主要介绍了原生js如何封装自定义滚动条,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。效果图:代码如下:<!doctype&nb...
    99+
    2022-10-19
  • web开发中如何实现滚动条的监听与内容随着滚动条动态加载
    这篇文章主要介绍web开发中如何实现滚动条的监听与内容随着滚动条动态加载,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实例如下:<!DOCTYPE html> ...
    99+
    2022-10-19
  • Vue.js如何通过监听滚动事件实现动态锚点
    这篇文章主要介绍了Vue.js如何通过监听滚动事件实现动态锚点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体效果如下:如果是传统项目,这...
    99+
    2022-10-19
  • JS如何实现页面滚动到关闭时的位置与不滚动效果
    这篇文章主要讲解了“JS如何实现页面滚动到关闭时的位置与不滚动效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JS如何实现页面滚动到关闭时的位置与不滚动效果”吧!标题显而易见,要说两种情况...
    99+
    2023-06-30
  • vue如何监听页面的滚动的开始和结束
    目录监听页面的滚动的开始和结束vue监听页面滚动事件方法:监听滚动实现问题:监听不到页面的滚动监听页面的滚动的开始和结束 export default { data(...
    99+
    2022-11-13
  • js如何实现列表自动滚动循环播放
    这篇文章主要介绍了js如何实现列表自动滚动循环播放的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇js如何实现列表自动滚动循环播放文章都会有所收获,下面我们一起来看看吧。1.实现效果图鼠标移入,暂停滚动; 鼠标移...
    99+
    2023-07-02
  • JS如何实现滚动到指定位置导航栏固定顶部
    小编给大家分享一下JS如何实现滚动到指定位置导航栏固定顶部,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!代码:<!DOCT...
    99+
    2022-10-19
  • jQuery如何自动的滚动到页面特定区域
    这篇文章将为大家详细讲解有关jQuery如何自动的滚动到页面特定区域,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。自动的滚动到页面特定区域jQuery.fn.autoscroll = ...
    99+
    2023-06-27
  • vue中如何实现锚点定位平滑滚动
    目录vue锚点定位平滑滚动vue点击tabs平滑滚动(锚点事件)定义兼容使用vue锚点定位平滑滚动 下面是简单的代码,拿来即用 html  //给div盒子设定单击事件和r...
    99+
    2022-11-13
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作