zoukankan      html  css  js  c++  java
  • 关于百度信息流“霸屏”代码(着落页点击浏览器“回退”按钮还是在官网)的实现。

    如题,最近百度信息流针对部分客户发布了禁止“霸屏”代码的公告,作为一名网络营销人员,之前的技术人员,我看到公告的第一反应居然就是“哇靠,居然还可以这么搞,我怎么没想到”的感慨。

    实现原理:

    利用html5的window.history.pushState()函数往浏览器地址栏中人为推送几条历史记录,点击回退按钮的时候,直接退回到添加的历史记录中。

    实现方式如下:

    在全局js中添加如下js代码:

    //添加历史记录
    addHistory =function (){//参数依次填入要添加的同网站地址即可
    	var  sourceHref =document.location.href; 
    	for (var i=0;i<arguments.length;i++){
    		window.history.pushState({}, "", arguments[i]);
    	}
    	window.history.pushState({}, "", sourceHref);
    }
    window.addEventListener("popstate", function(e) {//激活点击浏览器后退按钮时刷新页面      
    		location.reload() 
    }, false); 
    

     在需要添加历史记录的页面添加调用代码:

    addHistory("推广链接1","推广链接2","推广链接3");
    //链接数量不限定,0-n个都可以,链接可以是相对页面也可以是绝对网址,不过是绝对网址的时候,一定要是本网站的地址。
    
  • 相关阅读:
    PAT 2016 数据的交换输出
    HDU 2020 绝对值排序
    HDU 2013 蟠桃记
    HDU 2005 第几天?
    HDU 2004 成绩转换
    系统时钟初始化
    array_map 去除数组参数里面左右两端空格
    建立自己的异常类方式
    laravel withCount 统计关联数量
    laravel门面和服务提供者使用
  • 原文地址:https://www.cnblogs.com/ginowang42/p/7127454.html
Copyright © 2011-2022 走看看