yang。 发表于 2021-7-15 15:19:19

JS后退劫持

本帖最后由 yang。 于 2021-7-15 20:32 编辑

觉得有用的兄弟可以用广告币砸死我


$(function () {
    addEventBack();

    function addEventBack() {
      pushHistory();
      window.addEventListener("popstate", addBackKey, false);

      function pushHistory() {
            var state = {title: "title", url: "#"};
            window.history.pushState(state, "title", "#jjjj");
      }
    }

    function addBackKey() {
      var res = confirm("是否确认离开当前页面?");
      if (res == true) {
            window.location.href = "http://www.baidu.com";
      } else {
            addEventBack();
            history.pushState(state, null, location.href);
      }
    }
})







妈的,经过反复测试,发现写的时候打开了F12,触发了浏览器用户事件,popstate 事件才生效了,乌龙了


经查阅资料和API,发现必须要有用户交互的动作才能触发




所以以上代码只适用于有用户交互动作之后的回退劫持

yang。 发表于 2021-7-15 15:22:12

要两个页面
A -> B

代码放B页面,先由A页面通过a标签跳转到B页面,然后点浏览器上的后退按钮。

Luckmc 发表于 2021-7-15 17:44:45

yang。 发表于 2021-7-15 15:22
要两个页面
A -> B



老哥,发一个附件文本呗。:handshake

Hyderich 发表于 2021-7-15 17:59:13

感谢分享,不过我这懒人直接用付费的,后退键页内弹出小广告,还能定制样式:lol

yang。 发表于 2021-7-15 18:04:01

Luckmc 发表于 2021-7-15 17:44
老哥,发一个附件文本呗。

要下班嘞,一会儿回去搞上

yang。 发表于 2021-7-15 18:04:45

Hyderich 发表于 2021-7-15 17:59
感谢分享,不过我这懒人直接用付费的,后退键页内弹出小广告,还能定制样式 ...

付费的? 哪个。。。

Hyderich 发表于 2021-7-15 18:19:08

yang。 发表于 2021-7-15 18:04
付费的? 哪个。。。

popupmaker,挺好用的,之前跑dating我用的弹出一个yes/no挽留选项到smartlink,转化率比直接跳提高不少,我的aff链接;P:
https://popupmaker.com/affiliate/ref/8aed9ff6

马嘉 发表于 2022-4-19 03:50:39

不太懂代码,这个是用户点击后退按钮,然后跳到指定的新页面吗?

cissss 发表于 2022-4-19 04:24:20

这玩意儿有技术要求的,像我们这种一般人,还是花钱吧,adspyglass有全套pop代码
页: [1]
查看完整版本: JS后退劫持