近日看腾讯.新浪的移动端网站,发现一件非常蛋疼的事情,在列表浏览内容,我往下翻,往下翻,突然,看到一个十分霸气的标题,于是点到文章查看详细内容,若干时间后,点回退按钮,浏览器回退到页面的最顶部了. 于是就写了这么一个jQery的小插件,当然,写完之后发现PC端的chrome可以记录浏览位置,泪奔 插件很简单,就是监听浏览器的滚动事件, 通过改变地址栏hash值记录访问位置,方便后退继续往后浏览器内容. 适用于文章列表. 使用方法: $('.setHash').BackToHash(); .set…
现状:目前从商品详情页返回到商品列表页,还需要再去请求服务数据,还需要用户再去等待获取数据的过程,这样用户体验非常不好, 遇到的问题: 1:如何将数据缓存, 2:如何获取和保存列表滑动的高度, 3:判断商品列表页的上一个页面是什么? 如果是从搜索页进到商品列表页的话我们需要清除缓存,获取接口数据, 如果是商品详情页返回到商品列表页的话就用缓存数据,并且滑到到上次浏览的位置. 一:数据缓存 使用react全家桶reducers保存数据 dispatch({ type: types.PRODUCT_…
/*返回上次浏览位置*/ $(function () { var str = window.location.href; str = str.substring(str.lastIndexOf("/") + 1); if ($.cookie(str)) { $("html,body").animate({ scrollTop: $.cookie(str) }, 1000); } else { } }) $(window).scroll(function () { v…
vue中前进刷新.后退缓存用户浏览数据和浏览位置的实践 2018年07月07日 11:58:40 大灰狼的小绵羊哥哥 阅读数:4492   vue中,我们所要实现的一个场景就是: 1.搜索页面==>到搜索结果页时,搜索结果页面要重新获取数据, 2.搜索结果页面==>点击进入详情页==>从详情页返回列表页时,要保存上次已经加载的数据和自动还原上次的浏览位置. 最近在项目中遇到这个问题,思考了几套方案,总是不太完善.百度搜到的方案也基本都只能满足一些很简单的需求.对于复杂一些的情况,还是有些…
监控浏览器返回功能 判断浏览器返回功能 禁用浏览器的后退按钮 JS禁止浏览器后退键 http://volunteer521.iteye.com/blog/830522/ 浏览器返回功能 判断上一页面来源 怎么样判断页面是由history.back返回的?  document.referrer http://bbs.csdn.net/topics/370163049 js中使用document.referrer来判断上一页面来源 http://blog.163.com/chigar@126/blo…
实践场景需求 产品列表中,滚动到一定位置的时候,点击查看产品信息,后退之后,需要回到原先的滚动位置,这是常见的需求 所有页面均在router-view中,暂时使用了keep-alive来缓存所有页面,所以进入不同分类的产品列表,和不同的产品详情页面,需要更新数据 首先注意: 本次实践测试环境为pc端的webkit内核浏览器,手机暂时不测试 使用$router.back(-1) 和浏览器后退按钮效果一样 必须使用keep-alive缓存路由页面才能记住上次的位置,否则使用浏览器后退或$router…
1. <script language="JavaScript">    javascript:window.history.forward(1); </script> 利用JS产生一个“前进”的动作,以抵消后退功能,这种方法应该是最简洁的,并且不需要考虑用户连点两次或多次“后退”的情况,缺点是当用户端禁用了JavaScript之后即失效. 2. <A HREF="logout.do" onclick="javascript:…
通过最近测试的项目,认识到实际:浏览器后退键退出系统,会话仍旧有效.打破了之前认为浏览器后退键就会退出系统登录的认知. 一,了解Cookie和Session的作用,具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案. 如果不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了.这种生命期为浏览会话期的cookie被称为会话cookie.会话cookie一般不保存在硬盘上而是保存在内存里.…
在项目中遇到按下Backspace键让浏览器后退的问题,上网搜了几种解决方案都不太理想.于是集众人之智,采众家之长,归纳如下: 这里主要参考博客http://q821424508.iteye.com/blog/1587025 1.在公用js中定义阻止Backspace的方法 function banBackSpace(e){ var ev = e || window.event; //各种浏览器下获取事件对象 var obj = ev.relatedTarget || ev.srcElement…
在网站前端开发中,浏览器兼容性是前端开发框架要解决的第一个问题,要解决兼容性问题就得首先准确判断出浏览器的类型及其版本,而判断浏览器的版本一般只能通过分析浏览器的userAgent才能知道.今天我们把各种判断方法都总结一下,希望对大家有所帮助 JS获取浏览器信息 浏览器代码名称:navigator.appCodeName浏览器名称:navigator.appName浏览器版本号:navigator.appVersion对Java的支持:navigator.javaEnabled()MIME类型(…