前言

最近突发奇想,写了一个js插件,用来防止上班摸鱼,插件仅知乎页面有效,别做的太绝。。。

启动该插件后,打开知乎页面,标题会改成 “摸鱼中。。。” ,背景被替换成咸鱼。每隔一分钟,背景就会变的透明一下。

10分钟后,页面提示同时发送钉钉机器人报警。20分钟后,页面报警同时发送机器人报警并主动关闭知乎页面。同时2小时内禁止再次访问知乎页面。效果和代码如下。

// ==UserScript==

// @name 上班防摸鱼插件

// @namespace http://tampermonkey.net/

// @version 0.1

// @description 上班防摸鱼,自动关闭知乎页面,发送钉钉机器人报警。

// @author 大话家

// @include *://*.zhihu.com/*

// @require https://cdn.bootcss.com/jquery/1.11.1/jquery.min.js

// @require https://res.layui.com/layui/release/layer/dist/layer.js?v=3111

// @require http://pv.sohu.com/cityjson?ie=utf-8

// ==/UserScript==

(function() {

'use strict';

// 背景透明值

var opacityNum = 1.0;

// 页面打开的时间

var startTime = dateFormat("YYYY年MM月dd日 HH时mm分ss秒", new Date());

// 主机IP

var ip = returnCitySN.cip;

// 员工唯一标识

var userId = 360945;

var flag = localStorage.getItem("flag");

if(flag == "" || flag == undefined){

flag = 0;

localStorage.setItem("flag",1);

}

if(flag == 2){

var banTime = localStorage.getItem("banTime");

// 2小时后可解封

if(Date.now() - banTime > 2*60*60*1000){

localStorage.setItem("flag",0);

}else{

// 关闭页面

window.opener = null;

window.open('','_self');

window.close();

}

}

// 设置摸鱼壁纸

document.body.style.background = "url('https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1272729702,676992708&fm=26&gp=0.jpg')";

// 设置摸鱼标题

setTimeout(function(){

document.title = '摸鱼中。。。';

}, 3*1000);

// 摸鱼过程中,每一分钟背景逐渐透明

setInterval(function(){

$("body").css({ opacity: opacityNum });

opacityNum = opacityNum -0.04;

}, 60*1000);

// 10分钟内,页面警告;20分钟内强制退出!

setInterval(function(){

if(flag == 0){

layer.msg("你已摸鱼10分钟,请注意用时!n上班要专心!", { icon: 7, time: 10000 });

localStorage.setItem("flag", 1);

var dingMsg1 = "提示:"+userId+"("+ip+")用户从"+startTime+"开始摸鱼10分钟,上班要认真!";

$.ajax({

url:'https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxx',

type:"POST",

async: false,

beforeSend:function (xhr){

xhr.setRequestHeader('Content-Type', 'application/json,application/x-www-form-urlencoded');

},

data:JSON.stringify({"msgtype": "text","text": {"content": dingMsg1}}),

success:function (res){

console.log(res);

},

error:function (err){

console.log(err);

}

});

// 强制退出

}else{

layer.msg("你已摸鱼20分钟,您将禁止访问知乎页面2小时!", { icon: 7, time: 10000 });

localStorage.setItem("flag", 2);

var dingMsg2 = "提示:"+userId+"("+ip+")用户从"+startTime+"开始摸鱼20分钟!插件将屏蔽该用户访问知乎页面2小时。";

$.ajax({

url:'https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxx',

type:"POST",

async: false,

beforeSend:function (xhr){

xhr.setRequestHeader('Content-Type', 'application/json,application/x-www-form-urlencoded');

},

data:JSON.stringify({"msgtype": "text","text": {"content": dingMsg2}}),

success:function (res){

console.log(res);

},

error:function (err){

console.log(err);

}

});

localStorage.setItem("banTime", Date.now());

setTimeout(function(){

window.opener = null;

window.open('','_self');

window.close();

}, 12*1000);

}

}, 10*60*1000);

// 获取格式化时间

function dateFormat(fmt, date) {

let ret;

const opt = {

"Y+": date.getFullYear().toString(), // 年

"M+": (date.getMonth() + 1).toString(), // 月

"d+": date.getDate().toString(), // 日

"H+": date.getHours().toString(), // 时

"m+": date.getMinutes().toString(), // 分

"s+": date.getSeconds().toString() // 秒

// 有其他格式化字符需求可以继续添加,必须转化成字符串

};

for (let k in opt) {

ret = new RegExp("(" + k + ")").exec(fmt);

if (ret) {

fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))

};

};

return fmt;

}

})();

idea中摸鱼插件_上班防摸鱼插件(知乎页面)相关推荐

  1. 上班防摸鱼插件(知乎页面)

    前言 最近突发奇想,写了一个js插件,用来防止上班摸鱼,插件仅知乎页面有效,别做的太绝... 启动该插件后,打开知乎页面,标题会改成 "摸鱼中..." ,背景被替换成咸鱼.每隔一分 ...

  2. ai二维码插件_超实用的AI脚本插件合集2.0免费分享,让你的设计快人一步

    AI脚本插件合集2.0版,除了更新部分插件以及增加几款新插件外,还支持AI CC 2019了.此AI插件包目前有62款ai脚本插件,已经整合成插件面板的形式,方便在AI中调用 AI脚本插件合集说明 A ...

  3. 实用插件_这些实用的PR插件你知道吗?

    学习PR,安装使用插件必定是绕不开的过程.一款强大的插件可以节省剪辑时间,极大的提高工作效率. 常见的视频插件类型想必大家都知道,无非是包括调色.降噪.字幕.特效四种. 调色:Magic Bullet ...

  4. 组件 模块 插件_播放2 –模块,插件有什么区别?

    组件 模块 插件 关于Play 2模块和插件似乎有些困惑. 我想这是因为两者经常是同义词. 在Play(两个版本-1和2)中,存在明显的差异. 在本文中,我将研究什么是插件,如何在Java和Scala ...

  5. python处理ppt的插件_几款PPT神器插件,千万不能错过!

    本文首发于公众号"干货plus" 虽然说本身PPT的功能就已经很强大了,但是,如果借助一些官方或非官方的PPT插件,就能快速制作高逼格的PPT,十分节省时间,无论是上班一族还是学生 ...

  6. mysql 半同步 插件_编写半同步复制插件

    编写半同步复制插件 本节介绍如何使用plugin/semisyncMySQL源代码分发目录中的示例插件编写服务器端半同步复制插件.该目录包含名为rpl_semi_sync_master和的主插件和从插 ...

  7. python使用rpa需要什么插件_使用Python制作ArcGIS插件基础篇——工具介绍

    ArcGIS从10.0开始支持addin(ArcGIS软件中又叫作加载项)的方式进行插件制作.相对于以往9.x系列,addin的无论是从使用或者编写都更加方便快捷.通过开发语言,可以制作ArcGIS ...

  8. BootStrap-CSS样式_插件_工具提示(Tooltip)插件

    工具提示(Tooltip)插件 当您想要描述一个链接的时候,工具提示(Tooltip)就显得非常有用.工具提示(Tooltip)插 件是受 Jason Frame 写的 jQuery.tipsy 的启 ...

  9. chrome vue插件_不容错过的 Chrome 插件推荐合集-开发者必备篇

    ​没有安装扩展的浏览器,只发挥了 20% 的功力. 谷歌Chrome浏览器全球市场份额已接近 70%,谷歌浏览器除了本身方便易用外,各种各样的插件也让浏览器的功能发挥到了极致. 今天我们来介绍下不容错 ...

最新文章

  1. php twig扩展,如何写一个自定义的 Twig 扩展
  2. Win32 汇编要点总结
  3. agilebpm脑图_干货基于SpringBoot2开发的Activiti引擎流程管理项目脚手架
  4. 2021.NET大会日程首发!行程亮点全曝光!
  5. 【华为云技术分享】Docker容器+Phoronix-Test-Suite测试X86和ARM的ffmpeg转码性能
  6. mysql查看数据库表大小语句_MySQL查看数据库表容量大小的命令语句讲解
  7. Python编程输出所有的“水仙花数”
  8. Hibernate类的继承使用joined-class实现
  9. Linux接蓝牙音响无声音,win10蓝牙音箱没有声音怎么办_win10蓝牙音响连接成功没声音处理方法...
  10. R语言ggplot2可视化线图(line plot)、自定义设置X轴标签为字符串标签,将原有的指定间隔的数字标签替换为指定的字符串标签(change x axis labels into string
  11. 数字证书有什么作用?
  12. 10分钟内用Ezo和Python构建以太坊Oracle
  13. Integer和int详解
  14. 选车位摇号小程序开发制作
  15. Payload 实现分离免杀
  16. 计算机游戏与动画技术课程,计算机游戏动画教学大纲.pdf
  17. “不想天天昧着良心吹牛了”,创业者退场,VR进入洗牌期
  18. matlab中kmeans聚类算法
  19. 职场人际交往28招实用技巧
  20. oracle SGA

热门文章

  1. 用jar包生成maven依赖
  2. 华为设备ENSP基本命令简介
  3. SpringBoot开发之JavaWeb回顾
  4. 人体感应(红外感应)
  5. Unity的C#编程教程_61_委托和事件 Delegates and Events 详解及应用练习
  6. hugo使用katex
  7. 力扣 2303. 计算应缴税款总额
  8. gcore 获取程序core dump file 但程序不用退出,gdb 分析core
  9. 字节与字符,字节流与字符流
  10. Jquery生成条形码到网页以及打印条形码