首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

原生JS实现可折叠导航

但在代码中,并不能真的用for循环来做,那样在移动过程中js就会一直卡在循环中而不能执行其他代码,所以这里可以使用setInterval函数来做,它会每隔一段时间调用一次某个方法,格式为setInterval...nav.getBoundingClientRect().width == navTargetWidth){ clearInterval(CWLN); } } 调用时机为触发指定事件时调用,这里事件分为,点击按钮,鼠标进入导航...,鼠标移出导航三种。...当点击按钮后,判断当前导航是收缩还是展开状态,如果是收缩状态就将导航的宽和内容块的左外边距逐渐增长为展开时的值,反之同理。而判断是通过一个变量来标识导航状态实现。...leftNavIsClose; } 当鼠标进入和离开导航时: document.getElementsByClassName("left-nav")[0].onmouseenter = function

7.3K20

导航滚动吸顶并自动高亮和点击跳转锚点

2021-01-16 07:37:33 在阿里云的云市场页面上有一个效果,就是api导航滚动滚动到其所在位置时,自动吸顶,当滚动到下方所在导航指定的介绍时,自动高亮其导航。...那么需要我们自己手动来实现以下,具体实现思路就是增加滚动条监听事件,当滚动导航指定内容区域时,给其导航增加高亮样式,点击导航时,计算好滚动条的滚动距离,让其滚动过去即可。...我这次采用的是react来写,具体思路都是相同的,无论你用的是vue还是angular 还是使用jq还是原生js,都是一样的。...这样我们就实现了通过滚动条来控制导航高亮的效果了,接下了我们要实现的便是点击导航自动定位到其所在内容。...,并超过导航栏位置自动吸顶效果,同时点击导航滚动条缓动至锚点位置,实现的最终效果可以看阿里云市场详情页中的效果,比他显示的效果多了滚动条缓动效果。

10.3K40

Bootstrap实战 - 单页面网站

二、知识点 2.1 滚动监听 滚动监听使用了 Bootstrap 的 JavaScript 插件,根据滚动条所处的位置自动更新选中导航。...滚动监听一般与导航配合使用,这里先引用了带有二级导航导航。...并且给导航添加样式 navbar-fixed-top 使其固定在顶部不随滚动条移动而移动,但这样的话会遮住 body 上面的一部分内容,所以同时给 body 添加样式 padding-top: 60px...scrollspy(这里可以是任意值,只是做个示例)载体在其容器的滚动条变化时,随着载体的内容在视觉中的变化,其 id 对应的导航做出相应的反应。...此时 CSS + JS 大小已经变成了 50k 左右,之后按照常规方法引用就可以了。 三、实战 使用 Bootstrap 滚动监听和定制功能制作一个介绍豆瓣 App 的单页面。

8.8K104

李洋个人博客《mxlee》zblog主题-梦想家(精品推荐)

V、精简js代码。 2020/03/25更新: V、优化顶部导航内侧间距于主体保持一致。 2020/03/10更新: V、优化搜索页面文章描述php代码。...V、新增页面进度检测,导航顶部横条滚动加载。适配移动端显示效果。 2019/12/31更新: V、修复某些情况下导航抖动的问题。...其实引起cpu飙升的原因是js冲突,当时为了节省空间,把JS都放在一起了,所以才会导致这样,解决办法是分离js,具体为什么我也不清除,张戈博客使用输入特效,cpu占用率40-50%左右,我现在分离之后亦是如此...--.修复手机导航二级菜单重叠BUG; --.修复手机端广告位出错BUG --.新增百度联盟广告JS代码,直接填写js即可。...作者介绍在,主题设置-外观设置-自己修改,建议60字左右,超过不显示。

2K20

认识一下 Material Design Lite 布局组件

布局/Layout组件需要按特定的HTML结构进行声明: ... 需要指出的是,在一个布局声明中,header等子元素不一定全部使用,比如你可以不要 侧菜单: <any class="mdl-layout mdl-<em>js</em>-layout"...比如,自动隐藏 header、drawer区域等 手机 - 当屏幕尺寸小于480px时,MDL按手机环境应对 配置选项 MDL class 说明 mdl-layout 声明元素为布局组件 mdl-js-layout...mdl-layout-spacer 声明元素自动填充行容器剩余空间 mdl-layout__header--transparent 声明布局头为透明背景 mdl-layout__header--scroll 声明布局头为可滚动...mdl-layout__header--waterfall 对多行标题,当滚动内容时,仅显示第一行 三、头部 - 导航/Navigatoin 在header子元素内可以使用导航/navigation

2.5K20

使用APICloud平台实现朋友圈功能

​ 一、效果展示 二、项目结构图以及用到的模块 三、主要功能 1、下拉刷新上啦加载更多(mescroll.js) 2、点赞评论 3、导航背景透明渐变效果 4、图像预览(UIPhotoViewer)...3、导航背景透明渐变效果 实现的思路是结合 mescroll.js 滚动监听滚动区域距离顶部的高度该表导航背景和文字以及状态的文字颜色 具体代码如下 <div class=...UIPhotoViewer 实现起来比较简单现,但是要模仿微信那种效果需要创建一个网页 viewer-dot.Html 来实现滚动效果 当图像预览发生左右滚动时发送一个广播事件告诉viewer-dot.Html...封装了一个 js 函数实现图像压缩 compress_img()。...}); } else { api.toast({ msg: '无手机定位权限

84630

scroll-behavior & scrollIntoView 的使用,以及解决ios手机不兼容的问题

前言 在平时的日常开发中,我们可能会遇到这样的需求,点击一个导航链接,页面会定位到一个元素或上去。如下图vue官网所示,我点击左侧导航链接,右边会定位到相应的位置。...一、scroll-behavior MDN上是这么介绍该css属性的:当用户手动导航或者 CSSOM scrolling API 触发滚动操作时,css属性 scroll-behavior 为一个滚动框指定滚动行为...但有的时候,我们就是想要ios手机也能兼容平滑滚动效果,对此,我们可以使用js中的scrollIntoView和smoothscroll-polyfill插件解决该问题。...缺点 它的缺点主要还是兼容性问题,兼容性也不是很好,浏览器兼容性如下: 在ios手机上,一样会没有平滑滚动效果.但是,我们可以借助一个第三方插件,能够使ios手机支scrollIntoView的平滑滚动效果...,效果如下: 以上就是关于css中的scroll-behavior属性和js中的scrollIntoViewAPI使用方法,以及如何解决ios手机兼容性的问题。

2.9K10

06-移动端开发教程-fullpage框架

CSS3的新特性已经讲完了,接下来我们看一下jQuery的一个全屏jQuery全屏滚动插件fullPage.js。...支持手机,平板触摸事件。 支持css3动画。 支持窗口缩放。 窗口缩放时自动调整。 可设置滚动宽度,背景颜色,滚动速度,循环选项,回调,文本对齐方式等。...navigationTooltips 数组 空 项目导航的 tip slidesNavigation 布尔值 false 是否显示左右滑块的项目导航 slidesNavPosition 字符串 bottom...左右滑块的项目导航的位置,可选 top 或 bottom controlArrowColor 字符串 #fff 左右滑块的箭头的背景颜色 loopBottom 布尔值 false 滚动到最底部后是否滚回顶部...loopTop 布尔值 false 滚动到最顶部后是否滚底部 loopHorizontal 布尔值 true 左右滑块是否循环滑动 autoScrolling 布尔值 true 是否使用插件的滚动方式

5K50

06-移动端开发教程-fullpage框架

CSS3的新特性已经讲完了,接下来我们看一下jQuery的一个全屏jQuery全屏滚动插件fullPage.js。...支持手机,平板触摸事件。 支持css3动画。 支持窗口缩放。 窗口缩放时自动调整。 可设置滚动宽度,背景颜色,滚动速度,循环选项,回调,文本对齐方式等。...navigationTooltips 数组 空 项目导航的 tip slidesNavigation 布尔值 false 是否显示左右滑块的项目导航 slidesNavPosition 字符串 bottom...左右滑块的项目导航的位置,可选 top 或 bottom controlArrowColor 字符串 #fff 左右滑块的箭头的背景颜色 loopBottom 布尔值 false 滚动到最底部后是否滚回顶部...loopTop 布尔值 false 滚动到最顶部后是否滚底部 loopHorizontal 布尔值 true 左右滑块是否循环滑动 autoScrolling 布尔值 true 是否使用插件的滚动方式

5.1K90
领券