精华内容
下载资源
问答
  • 监听浏览器回退事件

    千次阅读 2017-07-27 16:14:14
    Dom: Js: window.onload=function(){ addHistoryEntity(); ...//新增一条浏览器浏览历史记录 function addHistoryEntity(){ if(history.pushState){ //现代浏览器 history.pushState('s

    Dom:

    <body>
      <a id="foo" style="display:none"></a><a href="#foo" id="goFoo" style="display:none"></a>
      <script src="../jquery-1.10.2.min.js"></script>
    </body>

    Js:

    window.οnlοad=function(){
       addHistoryEntity();
       detectBack();
    }
    //新增一条浏览器浏览历史记录
    function addHistoryEntity(){
        if(history.pushState){ //现代浏览器
            history.pushState('state1',null,'#foo');
        }else{                 //ie9及以下
            document.getElementById("goFoo").click();
        }
    }
    //监听浏览器回退按钮
    function detectBack(){
        if(history.pushState){ //现代浏览器
            window.onpopstate=function(){
                logout();
            }
        }
        else{                  //ie9及以下
            $(window).on("hashchange",function(){
                if(location.hash=="#foo"){
                    return;
                }
                logout();
            });
        }
    }
    //回退前事件
    function logout(){
        alert("此时调用logout");
        history.back();
    }
    history.pushState方法(还有history.replaceState方法)是html5中新定义的特性,ie浏览器从ie10开始支持.

    展开全文
  • 最近写东西的时候发现需要对浏览器的关闭进行监听,当用户关闭的时候需要调用session.invalid();...然而三个时间无论是哪个都无法单独解决单独监听浏览器关闭的事件,因为在浏览器正常运行时先加载的是beforeun...

    最近写东西的时候发现需要对浏览器的关闭进行监听,当用户关闭的时候需要调用session.invalid();清空session信息,但是仔细一查手册发现无论是body还是window都没有onclose事件,之后onload,onunload,beforeunload三个事件

    然而三个时间无论是哪个都无法单独解决单独监听浏览器关闭的事件,因为在浏览器正常运行时先加载的是beforeunload->onunload->onload 但是麻烦的是如果刷新页面时是执行beforeunload->onunload,如果关闭浏览器的话是执行onunload.如果单单监听onunload的话是无法区别用户是刷新还是关闭窗口的.所以就要用beforeunload来监测了

    window.οnbefοreunlοad=onclose;

    function onclose()
    {
        if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
        {
               removeSession();//这里添加具体的处理方案
        }
    }

    经过测试,IE7浏览器可以监测监听到 alt+f4 或者单击右上角小叉子退出,但是对于多选项卡浏览的用户貌似无法监听到这点比较可惜~

    转载于:https://www.cnblogs.com/Tim_Liu/archive/2010/11/09/1872596.html

    展开全文
  • 监听浏览器关闭事件,实现在刷新时或者浏览器关闭前我们可以写一些业务逻辑 需求1:H5游戏,在用户切换了标签页,(游戏界面处于非当前页面)暂停游戏 需求2:在线教学视频,在用户切换了标签页或者关闭浏览器后,...

    监听浏览器关闭事件,实现在刷新时或者浏览器关闭前我们可以写一些业务逻辑

    需求1:H5游戏,在用户切换了标签页,(游戏界面处于非当前页面)暂停游戏

    需求2:在线教学视频,在用户切换了标签页或者关闭浏览器后,暂停视频播放,并及时记录观看时间,发送到后台程序

    实现:

    主要是利用两个API: document.onvisibilitychange  和  window.onbeforeunload

    visibilitychange事件是浏览器新添加的一个事件,当浏览器的某个标签页切换到后台,或从后台切换到前台时就会触发该消息,现在主流的浏览器都支持该消息了,例如Chrome, Firefox, IE10等。在google浏览器中测试,关闭浏览器也可以触发这个事件

    visibilitychange兼容性:(仅参考)

    æµè§å¨æ¯ææåµ

     

    onbeforeunload 事件在即将离开当前页面(刷新或关闭)时触发。

    该事件可用于弹出对话框,提示用户是继续浏览页面还是离开当前页面。

    对话框默认的提示信息根据不同的浏览器有所不同,标准的信息类似 "确定要离开此页吗?"。该信息不能删除。

    所以这事件中我们不需要写返回值,写了返回值后会弹出我们控制不了的提示信息

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8" />
        <title></title>
        <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
    </head>
    <body>
        <script>
            document.onvisibilitychange = function () {
                if (document.visibilityState === 'hidden') {
                    localStorage.setItem("onvisibilitychange", Math.random())
                }
            }
            window.onbeforeunload = function () {
                $.post("/home/index", function (data) {
    
                });
                localStorage.setItem("onbeforeunload", Math.random())
            }
        </script>
    </body>
    </html>

     

    vue中要写到mounted里面

    mounted() {
        let _this = this;
        if (typeof document.addEventListener === "undefined") {
          console.error("浏览器不支持addEventListener,请升级");
        } else {
          document.addEventListener("visibilitychange", () => {
            if (document.visibilityState == "hidden") {
              _this.sendCurVideoTime(localStorage.getItem("webviewDuration"));
            }
          });
          window.addEventListener("beforeunload", () => {
             this.sendCurVideoTime(localStorage.getItem("webviewDuration"));
          });
        }
      },

     

    另外发现vue中函数:beforeDestroy 可以监测到浏览器关闭事件,但不能监测刷新事件


     

    展开全文
  • ”---- 网易云热评环境:小攻:Kali 2020,ip:192.168.1.133 小受:win7 x86,ip:192.168.1.137一、生成木马及监听主机参考上篇文章:二、获取浏览器历史记录1、通过后渗透模块获取浏览器历史记录run post/window....

    “我喜欢你,做我女朋友可以吗?”

    电话的那头没有反应,男生沉不住气了,

    小心翼翼地问着,“你在干嘛呀?”

    “我在点头。”

    ---- 网易云热评

    环境:小攻:Kali 2020,ip:192.168.1.133

    小受:win7 x86,ip:192.168.1.137

    一、生成木马及监听主机参考上篇文章:

    二、获取浏览器历史记录

    1、通过后渗透模块获取浏览器历史记录

    run post/windows/gather/forensics/browser_history

    d3106444bdc9946a1888426fd343374e.png

    2、打开拷贝到本地的文件

    /root/.msf4/local/aiyou_Firefox_wqsz7fg5.default-release_places.sqlite

    4987deaa0eebe46a1c956c27da958dcb.png

    067cff5ce8706e45fb843d79dee1273e.png

    3、通过执行SQL获取小受浏览过的历史记录

    SELECT url FROM moz_places

    8106f04da7f15c99dee6160e326f937f.png

    三、获取开启的服务

    run post/windows/gather/enum_services

    c0d888151675d61462761b9215923b01.png

    四、检测是否是虚拟机

    run post/windows/gather/enum_services

    8169c89d26c54f1f1fe7c9f313b3798e.png

    五、查看安装了哪些应用

    run post/windows/gather/enum_applications

    710af284a0cfa3dd503929018742cc7d.png

    禁止非法,后果自负

    欢迎关注公众号:web安全工具库

    展开全文
  • Jquery 监听浏览器前进后退

    千次阅读 2018-02-27 17:15:00
    ps: 如果浏览的网页有缓存, 当点击浏览器上的 前进和后退 按钮时, 是优先加载浏览器的缓存数据,(重要一点是:不走服务器端代码,如果在服务器端代码加断点,是不过断点的, 这也是缓存的一个弊端,有时候容易导致...
  • 说到这个,我想起了在csdn的时候关闭浏览器有弹出询问框的功能,于是百度和google监听浏览器关闭监听的方法,废话不多说,直接上代码。&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &...
  • 如何用js监听浏览器页面的关闭/刷新事件 因为要做关闭页面退出功能,但页面跳转和刷新时并不做退出事件,需要甄别刷新和关闭,也查找了很多方法,踩了许多深坑,在这里记录一下自己的方法吧。 不同的浏览器刷新...
  • 开发过程中经常遇到这种情况:页面不允许返回到上一页面或者需要转到指定页面,这时候我们就需要监听到浏览器后退事件,从而将它的浏览历史...//监听浏览器后退事件 window.addEventListener("popstate", function(e) {
  • 浏览器历史记录

    千次阅读 2017-06-12 11:25:14
    前言项目开发时候,经常会涉及到关于浏览器历史记录的一些操作,比如当前页面点击微信返回按钮后跳转到某一特定页面等等。吃过这个苦,方之水之深,水深不可怕,关键在于勤。如何生成一条历史记录 简单粗暴的方法,...
  • 浏览器记录

    2021-05-14 18:30:27
    浏览器记录浏览器中存有history和location对象。可以通过其中的一些方法,可以进行导航跳转: history.pushState 无需刷新增加页面栈记录,实现改变浏览器路径。 history.replaceState 修改当前的页面栈的...
  • history浏览器记录通过window.history下的pustState函数把数据写入到历史记录里面1.首先进行编码2.判断浏览器是否兼容window.history并写入到pustState3.监听前进,后退的按钮(第一种方法)4. 监听has变化(第二种...
  • 二、过去如何操纵浏览器历史记录? window.history对象,该对象上包含有length和state的两个值,在它的proto上继承有back、forward、go等几个功能函数 在popstate之前,我们可以利用back、forward、go对history...
  • “我喜欢你,做我女朋友可以吗?” 电话的那头没有反应,男生沉不住气了, 小心翼翼地问着,“你在干嘛呀?...1、通过后渗透模块获取浏览器历史记录 run post/windows/gather/forensics/brows...
  • 这篇文章主要介绍了html5的pushstate以及监听浏览器返回事件的实现,主要介绍了pushstate的使用,以及监听浏览器的解决等问题,感兴趣的可以一起来了解一下pushstate与监听浏览器返回解决的问题1.实际开发我们在A...
  • 这篇文章主要介绍了html5的pushstate以及监听浏览器返回事件的实现,主要介绍了pushstate的使用,以及监听浏览器的解决等问题,感兴趣的可以一起来了解一下pushstate与监听浏览器返回解决的问题1.实际开发我们在A...
  • postman 捕获chrome浏览器访问记录

    千次阅读 2019-09-12 15:17:11
    使用postman客户端捕获 安装Interceptor bridge 确保Postman Interceptor插件v0.2.26以上,下载地址 确保Interceptor connected status是绿色的 官方文档
  • 通常情况下,浏览器的历史记录能保存访问历史,但是因为有了history api,pushstate和replacestate,我们甚至可以“偷换掉”浏览器的历史记录,偷走后退按钮,让浏览者点按“后退按钮”时,到一个你指定的网页,看...
  • 浏览器记录栈和history API的应用

    千次阅读 2017-08-11 10:42:06
    上篇博客,我使用hashchange函数来监听每次hash改变的时候,记录当前的scrollTop值到sessionStorage中,然后再进入该页面时就看sessionStorage中是否有记录值,如果有就在页面html内容全部加载完成后取出记录值使...
  • 浏览器的历史记录

    千次阅读 2018-07-02 14:06:59
    可以存储当前历史记录点、替换当前历史记录点、监听历史记录点,下面逐一简要说明一下。1、存储当前历史记录点存储的方式类似于数组的入栈(Array.push()),在window.history里新增一个历史记录点,例如:// 当前的...
  • 使用 back(), forward()和 go() 方法来完成在用户历史记录中向后和向前的跳转。 向前和向后跳转 在history中向后跳转: window.history.back(); 这和用户点击浏览器回退按钮的效果相同。 类似地,你可以向前跳转...
  • js 记录浏览器位置

    千次阅读 2017-11-12 14:59:58
    //监听浏览位置记录 $(function(){ var str = window.location.href; str = str.substring(str.lastIndexOf('/')+1), getCookie = sessionStorage.getItem(str); if(getCookie){ $('html,body').scrollTop...
  • JavaScript没有监听物理返回键的API,所以只能使用 popstate 事件监听。 工具类如下: export function handleBrowserGoBack(back){ console.log("back"); pushHistory(); addPopstateListener(back); ...
  • 计算用户浏览时长(微信浏览器

    千次阅读 2019-08-16 15:23:16
    关于计算用户浏览微信浏览器时长问题观看时长微信客户端浏览器微信pc端浏览器(以 QQ浏览器为例)完整代码: 最近公司提出这样的需求:希望能统计用户观看直播或录播的时间; 场景:从微信打开的浏览器 那就绞尽...
  • pushstate与监听浏览器返回解决的问题1.实际开发我们在A页面调用组件,在组件里面填好内容之后,发现想退出不想填了,因为组件与A页面此时在同一页面,点击返回时候 给人感觉是返回上上个页面,但之前A页面填写的...
  • 近日看腾讯、新浪的移动端网站,发现一件非常蛋疼的事情,在列表浏览内容,我往下翻,往下翻,突然,看到一个十分霸气的... 插件很简单,就是监听浏览器的滚动事件, 通过改变地址栏hash值记录访问位置,方便后退...
  • 但是页面在打开时 没有任何操作 直接返回 回调没有执行 就直接退出了微信浏览器 如果用户点击了页面 监听就正常了 但是客户需要不用用户点击页面就能监听返回并跳转到指定链接 部分代码如下: varbalink=...
  • history这个插件可以方便管理你的浏览记录 cnpm install history --save import createHistory from 'history/createBrowserHistory' 三种方法 有三种使用方式 createBrowserHistory 现代浏览器使用 ...
  • js记录用户在网站的浏览记录和停留时间

    万次阅读 多人点赞 2016-09-02 01:39:25
    by weber开发者 from http://weber.pub/本文地址: http://weber.pub/js记录用户行为浏览记录和停留时间/163.html问题公司想统计一个用户从进入官网到注册,这个流程该用户整个的浏览路线,在哪个页面停留的时间比较...
  • 这其实是IP活动被记录了,你的浏览记录被追踪了。如果你不希望自己的活动记录被追踪,可以选择在上网的时候换IP。具体要怎么做呢?神龙教你几招: 在大部分情况下,关闭Cable / DSL调制解调器五分钟,就可以改变IP...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,196
精华内容 8,078
关键字:

如何监听浏览器的浏览记录