首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

vue返回上一页面回到原先滚动位置

项目结束,测试发现在首页商品列表中,向上滑动几页后点击进入详情,从详情页面返回商品列表页面回到了最顶部,测试不通过说是用户体验不好,要求从哪里点击进去返回该页面回到原先滚动页面。...思路:因为vue是单页面应用,进入其他页面时会销毁该页面,用keep-alive不让其刷新,具体实现为: (1).App.vue中加入: ...中,mounted方发只走一次,浏览器上实现了返回原来滚动位置目的。...但是在手机上测试,发现没用, 解决手机上实现目的方法: //页面离开记录滚动位置 beforeRouteLeave (to, from, next) { this.scrollTop =...document.documentElement.scrollTop || document.body.scrollTop next() }, //进入该页面,用之前保存滚动位置赋值 beforeRouteEnter

2.9K20

iOS 9人机界面指南(四):UI元素(下)- 腾讯ISUX

添加联系人按钮: 展示联系人列表 帮助用户一个联系人添加到当前联系人按钮所在视图中 使用添加联系人按钮让用户不需要使用键盘情况下就可以方便地访问到联系人。...当告知用户有多少打开视图需求比帮助用户选择特定视图更重要,使用页面控件。...在这个位置页面控件是始终可见,并且不会阻挡用户使用。 4.3.9 选择器 选择器展示了一组值,用户可以从中选择一个。 ?...刷新控件: 看起来类似活动指示器 可以出现在标题中 默认状态下不可见,当用户表格上缘往下拖拽以刷新内容才出现 使用刷新控件,给用户提供一个一致方式来了解一个表格或其他视图内容更新,而不需要等待下一个自动更新...就算你使用了刷新控件,也不要因此就不支持内容自动刷新。尽管用户喜欢执行刷新操作内容立刻刷新,他们也同样会喜欢内容自动刷新

13.2K30
您找到你想要的搜索结果了吗?
是的
没有找到

无限滚动加载最佳实践

这种技术很简单,就是页面往下滚动时候保持刷新。 ? 这项技术使用户没有打断和额外交互情况下滚动列表 —— 随着用户滚动,一条条内容就出现了。...优秀无限滚动五项原则 无限滚动做好,并不是不可能完成任务。为了完成它,记住并遵守以下方针。 1....返回按钮将用户待回至之前位置 有时候,无限滚动实现带来一个主要可用性缺陷:滚动位置并未被记录为“状态”。如果用户从列表中链接跳转了,然后点返回按钮,他们希望能回到页面原来相同位置。...别让你用户就因为使用返回按钮,找不到列表位置。很重要是,用户通过列表访问了某一个项目的详情页,他们点击浏览器返回按钮返回列表时候,也应该在相同位置。...也可以有助于为用户添加额外清晰,包括文本解释了为什么用户等待(例如“加载评论…”)。 为用户添加额外声明,提供说明为何用户等待文本(“正在加载评论”),也是很有用。 ?

4.2K20

iOS新闻类App内容页技术探索

何在页面中合理处理WebView与扩展区中多种View协同滚动,灵活扩展,并且支持下拉刷新、上拉加载等操作,不同新闻类App也有不同技术方案。 1....极大提高了灵活性和复用可能。 不足: 由于这种方式需要对SubView中滚动视图进行计算、模块动态更新整体布局也需手动刷新等,极大提高实现复杂度。...相应位置粘贴NativeView: 进行以上两个步骤同时,进行下载图片数据、NativeView创建、初始化、异步数据拉取等工作。JS回调全部位置,根据位置及ID,粘贴Native组件。...同时,为了更好提升用户体验,需要对各个组件滚动位置进行计算,从而区分不同区域进行诸如预处理、延迟释放等逻辑。 1....View滚动状态简单: 滚动位置计算,最简单方式就是根据屏幕高度计算是否进入屏幕,对于预加载需求,绝大部分开源框架也是只是屏幕区域上下增加了Buffer,仍然不能区分具体状态,进入buffer

2.8K00

iOS 9人机界面指南(四):UI元素(上) - 腾讯ISUX

) 展示搜索字段 添加(Add) 新建一个项 回收站(Trash) 删除当前项 归档(Organize) 某个项移动到应用内其他位置,比如另一个文件夹 回复(Reply) 某个项发送或转发到另外一个位置...刷新(Refresh) 刷新当前内容(请尽量自动刷新必要才使用刷新按钮) 播放(Play) 播放当前媒体内容 快进(Fast Forward) 快进当前多媒体或幻灯片 暂停(Pause)...使用滚动条效果时候,当前页面滚动到下一页;而使用翻页效果页面上会出现一个模拟实体书或笔记本翻页效果翻页动画 使用页面视图控制器来展示那些线性内容(比如一个故事文本),或者是一些可以被自然地拆分成块内容...当用户视图中拖拽内容,内容随之滚动;当用户轻扫屏幕,内容快速滚动——直到用户再次触摸屏幕或内容已经到达底部停止。...想要了解更多,请参考下文控件中页面控件部分内容。 一般来说,一次只展示一个滚动视图。由于用户滚动屏幕动作幅度经常都会很大,如果在一屏中同时存在不止一个滚动视图,他们很容易会碰到另一个。

10.1K51

微信小程序实践:2.3 可滚动容器组件之 scroll-view

6,有时候一个后台vue页面中,没有人动它,它自己抖动不止,这可能是什么情况? 7,如何在scroll-view中自定义实现一个下拉刷新交互动画?...在这个地方,有一个实际内容宽度大于手机屏幕容器,它支持用户用手指左右滑动。下方还有一个滚动提示条,这是根据滚动位置计算出来。...它是控制「滚动锚定」特征,即控制滚动位置不随内容变化而抖动,这种情况据说在用户浏览行为中占比1%。这个属性默认是false,添加后,功能才会开启。 什么是滚动锚定?...默认情况下,WXS视图层执行,与页面JS中代码不是一路,后者是逻辑层执行微信官方文档所讲,WXS是一套不一样脚本语言,它是WeXin Script简写。...这里主要需要实现两个功能: 单击左侧菜单,右侧滚动到相应位置 右侧滚动,左侧菜单自动同步高亮 第一个功能点,可以通过scroll-into-view属性实现,左侧菜单与右侧每块区域id对应起来,单击更新

14.2K30

控制页面滚动:自定义下拉到刷新和溢出效果

作为一个例子,带一个应用程序抽屉带有大量用户可能需要滚动项目。当它们到达底部,溢出容器停止滚动,因为没有更多内容可供使用。换句话说,用户到达“滚动边界”。...当用户点击滚动边界,某些应用可能希望提供不同用户体验 ? (Chrome Android上滚动链接) 拉到刷新效果 拉到刷新是一种直观手势,通过Facebook和Twitter等移动应用推广。...拉下页面并释放,为更新近帖子被加载。事实上,这种特殊用户体验非常流行,以至于Android这样移动浏览器都采用了相同效果。向下滑动页面顶部会刷新整个页面 ? ?...最终结果是当用户到达聊天记录顶部/底部,主页面保持放置状态。聊天框中开始滚动不会传播出去 ?...(聊天窗口下内容也会滚动) 页面重叠场景 下面”方案另一个变动就是是当你看到内容固定位置叠加后滚动。一个死样品overscroll行为是为了!浏览器试图帮助,但它最终使网站看起来越来越多。

3.2K20

关于如何做一个“优秀网站”清单——规范篇

从详细信息页面返回,保留上一个列表页面滚动位置 确认方法:应用程序中查找列表视图。向下滚动点击一个项目进入详细页面详细页面滚动。...按返回,确保列表视图滚动到与细节链接/按钮被点击之前相同位置。 改善方法:当用户按“返回”,恢复列表中滚动位置。有些路由库可以帮你完成这个功能。...下面是天狗网页面列表中点击详情页后,再后退返回列表,列表页仍然能滚到上次进入位置 点击,输入框不会被屏幕键盘遮蔽 确认方法:找到一个包含文本输入页面。...滚动页面文本输入框放在屏幕上尽可能低位置。点击输入并确认键盘出现时没有覆盖输入。...如果是通用按钮,您可能希望点击URL直接复制到用户剪贴板,提供他们社交网络来分享,或尝试新Web Share API与Android上本机共享系统集成。

3.1K70

Window对象

length: 设置或返回窗口中框架数量。 localStorage: 提供长期本地存储接口。 location: 包含有关文档当前位置信息。...pageXOffset: 设置或返回当前页面相对于窗口显示区左上角X位置。 pageYOffset: 设置或返回当前页面相对于窗口显示区左上角Y位置。...print(): 打印当前窗口内容。 prompt(): 显示可提示用户输入对话框。 requestAnimationFrame: 提供匹配屏幕刷新动画帧绘制方法。...stop(): 停止页面载入,相当于点击了浏览器停止按钮。 Window对象事件 加载相关 onbeforeunload: 该事件在即将离开页面刷新或关闭)触发。...打印相关 onbeforeprint: 该事件页面即将开始打印触发 onafterprint: 该事件页面已经开始打印或者打印窗口已经关闭触发。

2.4K20

图表列表性能优化:可视化区域内最小资源消耗

但是,如果页面定时自动刷新,不可见区域内刷新完全是浪费前后端资源。...案例如下: 这个页面,不只是简单滚动加载那么加载。...来看看你项目存是否也可能存在以下几个致命问题: 多图表列表,多用户设置定时自动刷新,服务器请求特别多,资源消耗严重(如果限制视窗内刷新,十屏滚动,资源就是减少90%) 图表列表数据过大页面卡死,...echarts实例,项目内存占用巨大,甚至内存泄露,页面崩溃 直接开干版 容器滚动,通知容器内组件,需要重新渲染;组内再调用组件内刷新。...并存储当前加载请求参数,以后后面加载核验 已经加载中(组件loading),无需再加载) 已经初始化了,需要判断查询条件是否改变,如果改变了,需要再次加载——查询参数、定时刷新时间 对于尺寸变化

2.2K30

WebAPIs学习笔记

,简单理解影响到布局了,就会有回流 会导致回流操作 页面的首次刷新 浏览器窗口大小发生改变 元素大小或位置发生改变 改变字体大小 内容变化(:input框输入,图片大小) 激活css伪类...可以获得真正触发事件元素 ---- 滚动事件 作用:很多网页需要检测用户页面滚动到某个区域后做一些处理, 比如固定导航栏,比如返回顶部 事件名 scroll //可以给window或document...后面部分 hash 属性获取地址中啥希值,符号 # 后面部分 reload 方法用来刷新当前页面,传入参数 true 表示强制刷新 语法:loaction.属性 loactiom.方法() navigator...,1前进 本地存储 随着互联网快速发展,基于网页应用越来越普遍,同时也变越来越复杂,为了满足各种各样需求,会经常性 本地存储大量数据,HTML5规范提出了相关解决方案 数据存储用户浏览器中...同一个窗口(页面)下数据可以共享 3. 以键值对形式存储使用 4.

1K30

React项目中如何实现一个简单锚点目录定位

前言 锚点目录定位功能在长页面和文档类网站中非常常见,它可以让用户快速定位到页面某个章节 如何在React中实现锚点定位和平滑滚动 目录自动高亮实现思路 处理顶部导航遮挡锚点解决方案 服务端渲染下实现方案...页面会平滑滚动到AnchorComponent所在位置。...但是Next.jsSSR环境下就会有问题: 点击目录链接,页面不会滚动。 这是因为服务端,我们无法获取组件ref,所以锚点元素不存在,自然无法定位。 滚动页面,目录高亮也失效。...这样我们就可以点击目录链接,正确滚动到对应章节位置了。 数据注水 但是点击目录只解决了一半问题,滚动高亮还需要解决。 这里就需要用到数据注水技术。...简单来说就是: 服务端渲染,读取路由参数,提前计算高亮状态 高亮数据注入到响应中 客户端拿到注水数据后渲染,不会出现高亮错位 实现步骤: 1.服务端获取参数和数据 // getServerSideProps

72420

微信小程序官方组件展示之视图容器scroll-view

以下展示小程序官方组件能力,组件样式仅供参考,开发者可根据自身需求定义组件样式,具体属性参数详见小程序开发文档。功能描述:可滚动视图区域。...使用竖向滚动,需要给scroll-view一个固定高度,通过 WXSS 设置 height。组件属性长度单位默认为px,2.4.0起支持传入单位(rpx/px)。...设置哪个方向可滚动,则在哪个方向滚动到该元素1.0.0scroll-with-animationbooleanFALSE否设置滚动位置使用动画过渡1.0.0enable-back-to-topbooleanFALSE...scroll-top3. tip: 滚动 scroll-view 时会阻止页面回弹,所以 scroll-view 中滚动,是无法触发 onPullDownRefresh4. tip: 若要使用下拉刷新...,请使用页面滚动,而不是 scroll-view ,这样也能通过点击顶部状态栏回到页面顶部5. tip: scroll-view 自定义下拉刷新可以结合 WXS 事件响应 开发交互动画示例代码:JAVASCRIPTconst

1.7K60

Vue 踩过

1.路由变化页面数据不刷新问题 出现这种情况是因为依赖路由params参数获取写在created生命周期里面,因为相同路由二次甚至多次加载关系 没有达到监听,退出页面再进入另一个文章页面并不会运行created...解决办法:组件生命周期beforeDestroy停止setInterval // 组件销毁前执行钩子函数,跟其他生命周期钩子函数用法相同。...clearInterval(this.intervalId); }, 4.vue 滚动行为用法,进入路由需要滚动到浏览器底部、头部等等 使用前端路由,当切换到新路由,想要页面滚到顶部,或者是保持原先滚动位置...vue-router 能做到,而且更好,它让你可以自定义路由切换页面如何滚动。 注意:这个功能只支持 history.pushState 浏览器中可用。...实现vue路由拦截浏览器需求,进行一系列操作,草稿保存等等 场景:为了防止用户失误点错关闭按钮等等,导致没有保存已输入信息(关键信息)。

1.5K20

面试简书(五)

1.图片太大怎么处理 a.用不减分辨率压缩方式进行压缩 用PS打开图片,点击点击“文件”——“存储为Web所用格式”图片存储为Web所用格式,点击“存储”。...倘若用户网速不给力或者此页面图片太多时,就会发生每张图片都加载了一点但是都没有加载完成,导致最后没有一个图片能正常显示。一方面让用户体验非常之差,试问谁会一直耐心等待着页面的加载?...针对这种情况,就需要运用懒加载技术:先只加载可视窗口区域图片,当用户向下拖动滚动再继续加载后面的图片(也是只加载目前可视窗口区域内图片)。...1.这样减少了加载线程数量,使可视区域内图片也能够快速加载,优化了用户体验。2.减少了同一间发向服务器请求数,服务器压力剧减。...图片懒加载,简单来说就是页面渲染过程中,图片不会一次性全部加载,会在需要时候加载,比如当滚动滚动到某一个位置触发事件加载图片,通过jsimg标签data-src属性赋值给src属性 方案四:

1.1K10

移动端滚动研究

使用模拟滚动,浏览器js层面会消耗更多性能去改变dom元素位置dom复杂层级深页面更为高,所以长列表滚动还要使用正常滚动更好。...滚动和下拉刷新 方案1:借助iscroll原理,整个页面使用模拟滚动下拉刷新元素放在顶部,当页面滚动到顶部下拉,下拉刷新元素随着页面滚动出现,当手指离开收回,此方案实现起来较为简单直接借助iscoll...tranlateY值,两者同时位移来下拉刷新元素显示出来,手指离开(touchend)收回,这种方案满足了正常列表滚动使用原生滚动节省性能,只在下拉刷新使用模拟滚动来实现效果。...还会有一个性能上问题就是:当页面的列表过长,dom元素过多时,模拟滚动,下拉刷新这段时间内,页面也会有卡顿现象,这里采取了一个优化策略即: 列表较长dom数量较多时,触发下拉刷新时机时页面视窗之外...刷新完成之后手指离开(touchend)隐藏元素显示出来。 需要注意是,隐藏和显示视窗外元素这个操作在下拉刷新只会执行一次,并且只有在下拉刷新才会执行。

3.1K20

深入理解浏览器原理

选项卡外部所有内容都由浏览器进程处理(包含UI线程、网络线程、存储线程)。地址栏输入url,由浏览器进程UI线程处理。...大多数显示器每秒刷新屏幕60次(60 fps),当你每一帧移动屏幕,动画对人眼来说会很平滑(视觉停留效应)。但是如果动画错过了两者之间帧或程序运行JS,则页面将出现卡顿。...视口内部使用栅格部件 - chrome首次发布处理栅格化方式 用户滚动页面,则移动光栅框架,并通过更多光栅填充缺失部分 合成是一种页面的各个部分分层,分别栅格化,并在合成器线程单独线程中合成为页面的技术...一个图层可能像页面的整个长度一样大,因此合成器线程将它们分成多个图块并将图块发送到栅格线程。 3) 栅格存储:栅格线程栅格化每个图块并将它们存储GPU内存中。...非快速可滚动区域 1) 合成页面,合成器线程标记页面的一个区域,该区域事件处理程序附加为“非快速可滚动区域”。

4.5K31

现代浏览器探秘(part4):事件处理

本文中,我们分析当用户输入时,合成器是怎样实现平滑交互。...从浏览器角度看输入事件 当你听到“输入事件”,可能只会想到文本框打字或鼠标单击,但从浏览器角度来看,输入意味着来自用户所有动作。 鼠标滚轮滚动是输入事件,触摸或者鼠标移动也是输入事件。...当发生类似屏幕上触摸用户动作,浏览器是最先先接收到动作进程之一,但是浏览器进程只知道该动作发生位置。...2:鼠标悬停在页面图层上 了解非快速可滚动区域 由于JavaScript是运行在主线程上,所以当合成页面,合成器线程会标记页面的一个区域,该区域事件处理程序附加为“非快速可滚动区域”。...检查事件是否可取消 想象一下,页面中有一个框,你希望仅滚动方向限制为水平滚动

1.3K20

从15个点来思考前端大量数据渲染与频繁更新方案

在这种策略下,内容只有需要才被加载和渲染,通常是指用户滚动到无需立即加载内容部分时,该部分内容才开始加载。这种方式对于提高页面加载速度、减少初始加载资源和改善用户体验尤为重要。...扩展 实现惰性加载需要考虑一些最佳实践和潜在问题: 预加载关键资源:虽然懒加载推迟了非关键资源加载,但对于关键资源,页面首屏可见内容关键图片或数据,应确保它们能够尽快加载,以避免用户看到不完整或空白页面...占位符使用:资源被加载之前,可以使用适当占位符(加载动画、低质量图像预览等)来提供更好用户体验,防止页面布局突然变化导致用户困扰。...优势 性能提升:通过减少渲染DOM数量,虚拟列表大幅降低了浏览器负担,提升了渲染性能,尤其是处理大量数据。 响应速度快:用户滚动列表,界面能够快速响应,因为只需要处理和渲染少量数据项。...前端请求数据:前端需要发送请求获取数据,传递相应分页参数。 用户触发加载:根据用户行为(滚动、点击等)来触发更多数据加载。

77942

前端系列第8集-Javascript系列

例如,当用户连续滚动页面,如果每次滚动都触发事件处理函数,这可能会影响页面性能。...如果上传成功,则继续上传下 上拉加载和下拉刷新是一种常见Web应用程序交互方式,用户可以滚动页面通过手势触发这些功能。...下面是一些实现此类功能基础知识: 下拉刷新:当用户下拉页面,应用程序应该显示一个指示器,以表明正在加载新内容。加载新内容,通常会将原始内容替换为新内容。...以下是一些实现上拉加载和下拉刷新基本步骤: 监听滚动事件:使用JavaScript添加滚动事件监听器,以便在用户向下滚动或向上滚动执行相应操作。...实现下拉刷新:当用户向下滚动并且滚动位置超过一定阈值,显示一个指示器,并触发数据更新请求。一旦数据更新完成,隐藏指示器并刷新UI。

18410
领券