浏览器链接跳转方式以及事件处理
2018-07-05 18:21
337 查看
1、浏览器跳转方式:
location.href
location.reload
location.replace
location.assign
history.go
history.back
history.forward
window.open
非跳转,html5的方法,仅改变浏览器的历史记录
history.pushState({page: 1}, 'title 1', '?page=1'); history.pushState({page: 2}, 'title 2', '?page=2'); history.replaceState({page: 3}, 'title 3', '?page=3');
2、浏览器没有关闭窗口事件,仅有onbeforeunload, onunload,但是前5种方式以及鼠标点击浏览器刷新或者按快捷点键或者地址栏回车都会触发页面的卸载;
3、关闭窗口立即清除登录态,多页面模式,需要考虑计数窗口,在页面卸载和加载时候将窗口加减数并且保存到同domain的cookie里面,假如是最后一个页面卸载的时候则清除,一般考虑使用单窗口形式,点击和按键或者地址栏以及点击关闭窗口时候触发是否清除登录态,其他页面逻辑内的跳转操作可进行封装方法,然后在每个方法跳转前加一个参数,然后unload前判断假如这个参数存在则不进行清除登录态操作;
采用后端接口做心跳控制(卸载发请求以及加载发请求的时间差控制,如果卸载时间后收到的加载时间较长则清除登录态)也会存在问题,不好控制网速,不好控制是否调试断点的情况,
4、窗口间使用session传值
阅读更多相关文章推荐
- DOM中为事件添加事件处理程序的几种方式以及跨浏览器方式
- 转载:SD9022: 各浏览器对页面 onload 事件处理方式不一致
- html事件传播和各个浏览器的处理方式
- JavaScript跨浏览器处理事件以及相关对象
- 单击事件的处理方式及注册窗体的创建之(四)Intent实现界面跳转传值
- 【专】各浏览器对页面 onload 事件处理方式
- js+jquery皇帝梦-12 onkeydown以及多种浏览器对事件的兼容处理办法
- 各浏览器对页面 onload 事件处理方式不一致
- JavaScript对象内联函数的使用,对象内部方法和属性的使用,以及事件冒泡的处理方式
- 动态添加点击事件,传参数的比较严谨,以及兼容大部分浏览器的方式
- 各浏览器对页面 onload 事件处理方式不一致
- 利用popstate事件和window下的history对象处理浏览器跳转问题
- Android ActionBar Home按钮返回事件处理的两种方式
- 浅谈Javascript事件处理程序的几种方式
- 关于短信的读取以及新短信到达时如何触发事件去处理自己的逻辑
- Cookie 路径在本机测试及服务器部署,在浏览器处理方式上的不同
- java中httpclent以post方式提交请求时,http返回码是302重定向时,不自动跳转的处理
- 各浏览器对缓冲区的处理方式
- android事件处理的三种方式
- html5移动设备浏览器触屏事件兼容处理