防覆盖

var isFromTuia = (function () {
    var tuiaDomains = ['tuisnake', 'localhost']

    function GetUrlDomain(url) {
      var arrUrl = url.split("//");
      var start = arrUrl[1].indexOf("/");
      var relUrl = arrUrl[1].substring(0, start); //stop省略,截取从start开始到结尾的所有字符
      return relUrl;
    }

    var es = document.getElementsByTagName('script');
    var iScript = es[es.length - 1]
    if (iScript && iScript.src) {
      var iDomain = GetUrlDomain(iScript.src);

      for (var i = 0; i < tuiaDomains.length; i++) {
        if (iDomain.indexOf(tuiaDomains[i]) != -1) {
          return true;
        }
      }
    }

    return false;
  })();

  function defineTaWin(key, value, isFreeze) {
    if (Object.defineProperty && isFreeze) {
      Object.defineProperty(window, key, {
        writable: false,
        value: value
      });
    } else {
      window[key] = value;
    }
  }

  defineTaWin('countLog', countLog, isFromTuia);

https://inuanfeng.github.io/test/referend.html

最新文章

  1. Hexo部署到GitHub出现spawn ENOENT的解决办法
  2. Android自定义PopupWindow显示在控件上方或者下方
  3. 你所不知道的Android Studio调试技巧
  4. flex模拟微信布局
  5. vim替换指令备忘
  6. Python 实现有道翻译命令行版
  7. KeyValue Config
  8. sql- 别名alias(as)
  9. Think Python - Chapter 16 - Classes and functions
  10. linux -cp/mv
  11. 如何扩展大规模Web网站的性能?
  12. android开发之merge结合include优化布局
  13. hibernate Java 时间和日期类型的 Hibernate 映射
  14. TimeSpinner( 时间微调) 组件
  15. android项目中刷新activity界面
  16. MongoDB 查询文档
  17. JUnit4快速入门
  18. CNN的反向传播
  19. Google 的 OKR 制度与KPI 有什么不同?
  20. Xcode $(SRCROOT)和$(PROJECT_DIR)区别

热门文章

  1. MediaManager安装后配置
  2. MapReduce实例——求平均值,所得结果无法写出到文件的错误原因及解决方案
  3. 3 Eclipse 查看不了源码
  4. 【简】题解 AWSL090429 【市场】
  5. [SDOI2013]森林 主席树+启发式合并
  6. 理解vue 修饰符sync
  7. 如何隐藏overflow: scroll的滚动条
  8. Redis的删除机制、持久化 主从
  9. Idea查看并过滤某个接口或者类的实现
  10. 商务电话思维图(XMind f&#252;r Gesch&#228;ftliche Telefongespr&#228;che)