// ==UserScript==
// @namespace https://greasyfork.org/zh-CN/users/106222-qxin-i
// @name 网页限制解除(改)
// @name:en Remove web limits(modified)
// @name:zh 网页限制解除(改)
// @name:zh-CN 网页限制解除(改)
// @name:ja ウェブの規制緩和(変更)
// @author Cat73 & iqxin(修改)
// @contributor iqxin
// @description 通杀大部分网站,可以解除禁止复制、剪切、选择文本、右键菜单的限制。原作者cat73,因为和搜索跳转脚本冲突,遂进行了改动,改为黑名单制。
// @description:en Pass to kill most of the site, you can lift the restrictions prohibited to copy, cut, select the text, right-click menu.revised version
// @description:zh 通杀大部分网站,可以解除禁止复制、剪切、选择文本、右键菜单的限制。原作者cat73,因为和搜索跳转脚本冲突,遂进行了改动,改为黑名单制。
// @description:zh-CN 通杀大部分网站,可以解除禁止复制、剪切、选择文本、右键菜单的限制。原作者cat73,因为和搜索跳转脚本冲突,遂进行了改动,改为黑名单制。
// @description:zh-TW 通殺大部分網站,可以解除禁止復制、剪切、選擇文本、右鍵菜單的限制。
// @description:ja サイトのほとんどを殺すために渡し、あなたは、コピー切り取り、テキスト、右クリックメニューを選択することは禁止の制限を解除することができます。
// @description 原作者https://www.github.com/Cat7373/,因为和搜索跳转脚本冲突,遂进行了改动
// @homepageURL https://cat7373.github.io/remove-web-limits/
// @supportURL https://greasyfork.org/zh-CN/scripts/28497
// @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAABpElEQVR4nO3Vv2uUQRDG8c/ebSMWqay0trATAxrUSi1S2AiWFoJYpNCgoBjURsHWJKeNRfAvsDgFixQqKdPZ2ViEiCJYBOQu8f1hEXO59713j7MUfLZ6d2a/O8vMO0OzDnin9Ku2Mjvuaw07xgSAYEVXe2indMhj92zpKJLnBhF8MDeye9hn6zbN70eRiqCw02Bra3up8BBLu1FEBxsBucXqW4csz0ULe4jorSCMuPU89boRELDMHiI6Y8V65bbCUTccc70RkaOwKLOg0IkyXa9qTjOu2LAs6NZuD86hrdTyxRNTkUqqdhXlHrngGRVEZsMpJwex9DxIZSHYclesIb65LCoHgIs66UJq6btDBZHZrPh8V6YBOX66LbOkTGckBYimBW2FVTNeuOZNyrFJ236Yl4NSy5SbVm1PDvhodqgyMledTdRlAtDzqfL9tfkwUtyaRkv9LwFj9B/w7wPycXOhqlJ0yZHKPChMi5MCiM47XhsopbVJAUHfrYbmN/EToN+02eLPfz9OYyZhFJzW1Jn3lTsxaKQjCkp52jy45r1ZvSbTb9M0d4PBozGZAAAAAElFTkSuQmCC
// @version 4.1.3
// @license LGPLv3
// @compatible chrome Chrome_46.0.2490.86 + TamperMonkey + 脚本_1.3 测试通过
// @compatible firefox Firefox_42.0 + GreaseMonkey + 脚本_1.2.1 测试通过
// @compatible opera Opera_33.0.1990.115 + TamperMonkey + 脚本_1.1.3 测试通过
// @compatible safari 未测试
// @match *://*/*
// @exclude *www.bilibili.com/video*
// @exclude *www.bilibili.com/bangumi*
// @exclude *www.panda.tv*
// @connect eemm.me
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_addStyle
// @grant GM_deleteValue
// @grant GM_xmlhttpRequest
// @grant GM_setClipboard
// @run-at document-start
// ==/UserScript==
(function() {
'use strict';
var settingData = {
"status":1,
"version" : 0.1,
"message" : "啦啦啦,啦啦啦,我是卖报的小行家",
// "position" : ["0","0","auto"],
"positionTop":"0",
"positionLeft":"0",
"positionRight":"auto",
"addBtn" : true,
"connectToTheServer" : true,
"waitUpload":[],
"currentURL":"null",
// 域名规则列表
"rules" : {
"rule_def": {
"name": "default",
"hook_eventNames": "contextmenu|select|selectstart|copy|cut|dragstart|mousemove|beforeunload",
"unhook_eventNames": "mousedown|mouseup|keydown|keyup",
"dom0": true,
"hook_addEventListener": true,
"hook_preventDefault": true,
"hook_set_returnValue": true,
"add_css": true
},
"rule_plus": {
"name": "default",
"hook_eventNames": "contextmenu|select|selectstart|copy|cut|dragstart|mousedown|mouseup|mousemove|beforeunload",
"unhook_eventNames": "keydown|keyup",
"dom0": true,
"hook_addEventListener": true,
"hook_preventDefault": true,
"hook_set_returnValue": true,
"add_css": true
},
"rule_zhihu": {
"name": "default",
"hook_eventNames": "contextmenu|select|selectstart|copy|cut|dragstart|mousemove",
"unhook_eventNames": "keydown|keyup",
"dom0": true,
"hook_addEventListener": true,
"hook_preventDefault": true,
"hook_set_returnValue": true,
"add_css": true
}
},
"data": [
"b.faloo.com",
"bbs.coocaa.com",
"book.hjsm.tom.com",
"book.zhulang.com",
"book.zongheng.com",
"chokstick.com",
"chuangshi.qq.com",
"city.udn.com",
"cutelisa55.pixnet.net",
"huayu.baidu.com",
"imac.hk",
"life.tw",
"luxmuscles.com",
"news.missevan.com",
"read.qidian.com",
"www.15yan.com",
"www.17k.com",
"www.18183.com",
"www.360doc.com",
"www.coco01.net",
"www.eyu.com",
"www.hongshu.com",
"www.hongxiu.com",
"www.imooc.com",
"www.jjwxc.net",
"www.readnovel.com",
"www.tadu.com",
"www.xxsy.net",
"www.z3z4.com",
"www.zhihu.com",
"yuedu.163.com",
"www.ppkao.com",
"movie.douban.com",
"www.ruiwen.com",
"vipreader.qidian.com",
"www.pigai.org",
"www.shangc.net",
"www.sdifen.com"
]
}
var rwl_userData = null;
var hostname = window.location.hostname;
var btn_node = null;
var rule = null;
var list = null;
// 储存名称
var storageName = "iqxinStorageName";
// 要处理的 event 列表
var hook_eventNames, unhook_eventNames, eventNames;
// 储存被 Hook 的函数
var EventTarget_addEventListener = EventTarget.prototype.addEventListener;
var document_addEventListener = document.addEventListener;
var Event_preventDefault = Event.prototype.preventDefault;
// 查看本地是否存在旧数据
rwl_userData = GM_getValue("rwl_userData");
if(!rwl_userData){
rwl_userData = settingData
// GM_setValue("rwl_userData",rwl_userData);
}
version_up_3_to_4();
// 获取黑名单网站
list = get_black_list();
// 添加按钮
if(rwl_userData.addBtn){
addBtn(); // 添加
btn_node = document.getElementById("black_node");
setTimeout(function(){
try {
dragBtn()
} catch (e) {
console.error("dragBtn函数 报错");
}
},1000)
// dragBtn(); // 增加拖动事件
}
// 检查是否在黑名单中
if(check_black_list(list,hostname)){
try {
if(rwl_userData.addBtn){
btn_node.checked = true;
}
} catch (e) {
console.error("脚本rwl-错误:\n btn_node : %s\n%s\n脚本rwl-错误位置: btn_node.checked = true;",btn_node,e);
} finally {
init();
}
}
// // ------------------------------函数 func
//添加按钮 func
function addBtn(){
var node = document.createElement("remove-web-limits-iqxin");
node.id = "rwl-iqxin";
node.className = "rwl-exempt";
// 再次打开窗口小于之前窗口的情况,导致按钮出现在可视窗口之外
var screenClientHeight = document.documentElement.clientHeight;
var tempHeight;
if (rwl_userData.positionTop>screenClientHeight){
tempHeight = screenClientHeight -40;
} else{
tempHeight = rwl_userData.positionTop;
}
// 改变窗口大小的情况
window.onresize=function(){
var screenClientHeight = document.documentElement.clientHeight;
var tempHeight;
if (rwl_userData.positionTop>screenClientHeight){
tempHeight = screenClientHeight -40;
} else{
tempHeight = rwl_userData.positionTop;
}
node.style.top = tempHeight + "px";
}
tempHeight = tempHeight<0?0:tempHeight
node.style.cssText = "position:fixed;top:"+tempHeight+"px;left:"+rwl_userData.positionLeft+"px;right:"+rwl_userData.positionRight+"px;";
// node.innerHTML = '<label><input type="checkbox" name="" id="black_node">黑名单</label><button id="delete">delete</btton>';
// node.innerHTML = '<label>限制解除 <input type="checkbox" name="" id="black_node"></label>';
node.innerHTML = '<button type="button" id="rwl-setbtn"> set </button> <lalala style="cursor:move;">限制解除</lalala> <input type="checkbox" name="" id="black_node" >';
if(window.self === window.top){
if (document.querySelector("body")){
document.body.appendChild(node);
} else {
document.documentElement.appendChild(node);
}
}
node.addEventListener("mouseover",function(){
node.classList.add("rwl-active-iqxin");
});
node.addEventListener("mouseleave",function(){
setTimeout(function(){
node.classList.remove("rwl-active-iqxin");
black_check(black_node.checked);
},100)
});
// 删除本地存的黑名单
// document.getElementById("delete").addEventListener("click",function(){
// GM_deleteValue ("list_user");
// test();
// });
// GM_addStyle(
// "#rwl-iqxin{" +
// "position:fixed;" +
// // "top:0;" +
// // "left:0px;" +
// "transform:translate(-90px,0);" +
// "width:85px;" +
// "height:25px;" +
// "font-size:12px;" +
// "font-weight: 500;" +
// "font-family:Verdana, Arial, '宋体';" +
// "color:#fff;" +
// "background:#333;" +
// "z-index:2147483647;" +
// "margin: 0;" +
// "opacity:0.05;" +
// "transition:0.3s;" +
// "overflow:hidden;" +
// "user-select:none;" +
// "text-align:center;" +
// "white-space:nowrap;" +
// "line-height:25px;" +
// "padding:0 16px;" +
// "border:1px solid #ccc;" +
// "border-width:1px 1px 1px 0;" +
// "border-bottom-right-radius:5px;" +
// "box-sizing: content-box;" +
// "}" +
// "#rwl-iqxin input{" +
// "margin: 0;" +
// "padding: 0;" +
// "vertical-align:middle;" +
// "-webkit-appearance:checkbox;" +
// "-moz-appearance:checkbox;" +
// "position: static;" +
// "clip: auto;" +
// "opacity: 1;" +
// "cursor: pointer;" +
// "}" +
// "#rwl-iqxin.rwl-active-iqxin{" +
// // "top: 10px;" +
// "left: 0px;" +
// "transform:translate(0,0);" +
// "opacity: 0.9;" +
// "height: 32px;" +
// "line-height: 32px" +
// "}" +
// "#rwl-iqxin label{" +
// "margin:0;" +
// "padding:0;" +
// "font-weight:500;" +
// "}" +
// "#rwl-iqxin button{" +
// "margin: 0;" +
// "padding: 0 2px;" +
// "border: none;" +
// "border-radius: 2px;" +
// "cursor: pointer;" +
// "}" +
// // 设置菜单
// "#rwl-setMenu{" +
// "text-align:left;" +
// "font-size:14px;" +
// "z-index:999999;" +
// "}" +
// "#rwl-setMenu p{" +
// "margin:5px auto;" +
// "}" +
// // 广告
// "#rwl-ad{" +
// "height:100%;" +
// "width:350px;" +
// "position: absolute;" +
// "top: 0;" +
// "right: -100%;" +
// "border-radius:4px;" +
// "padding:2px;" +
// "background:#fff;" +
// "}" +
// "#rwl-ad #xin-ad-pic{" +
// "width:100%;" +
// "}" +
// "#rwl-ad #xin-ad-code{" +
// "background: #fff;" +
// "text-align: center;" +
// "font-size: 1.2em;" +
// "color: #F4C774;" +
// "transition:0.5s;" +
// "padding-bottom:10px;" +
// "}" +
// "#rwl-ad:hover #xin-ad-code{" +
// "transform:translate(0,-50%);" +
// "color:red" +
// "}" +
// " "
// )
var style = document.createElement("style");
style.type="text/css";
style.innerHTML = "#rwl-iqxin{" +
"position:fixed;" +
// "top:0;" +
// "left:0px;" +
"transform:translate(-90px,0);" +
"width:85px;" +
"height:25px;" +
"font-size:12px;" +
"font-weight: 500;" +
"font-family:Verdana, Arial, '宋体';" +
"color:#fff;" +
"background:#333;" +
"z-index:2147483647;" +
"margin: 0;" +
"opacity:0.05;" +
"transition:0.3s;" +
"overflow:hidden;" +
"user-select:none;" +
"text-align:center;" +
"white-space:nowrap;" +
"line-height:25px;" +
"padding:0 16px;" +
"border:1px solid #ccc;" +
"border-width:1px 1px 1px 0;" +
"border-bottom-right-radius:5px;" +
"box-sizing: content-box;" +
"}" +
"#rwl-iqxin input{" +
"margin: 0;" +
"padding: 0;" +
"vertical-align:middle;" +
"-webkit-appearance:checkbox;" +
"-moz-appearance:checkbox;" +
"position: static;" +
"clip: auto;" +
"opacity: 1;" +
"cursor: pointer;" +
"}" +
"#rwl-iqxin.rwl-active-iqxin{" +
// "top: 10px;" +
"left: 0px;" +
"transform:translate(0,0);" +
"opacity: 0.9;" +
"height: 32px;" +
"line-height: 32px" +
"}" +
"#rwl-iqxin label{" +
"margin:0;" +
"padding:0;" +
"font-weight:500;" +
"}" +
"#rwl-iqxin button{" +
"margin: 0;" +
"padding: 0 2px;" +
"border: none;" +
"border-radius: 2px;" +
"cursor: pointer;" +
"}" +
// 设置菜单
"#rwl-setMenu{" +
"text-align:left;" +
"font-size:14px;" +
"z-index:999999;" +
"}" +
"#rwl-setMenu p{" +
"margin:5px auto;" +
"}" +
// 广告
"#rwl-ad{" +
"height:100%;" +
"width:350px;" +
"position: absolute;" +
"top: 0;" +
"right: -100%;" +
"border-radius:4px;" +
"padding:2px;" +
"background:#fff;" +
"}" +
"#rwl-ad #xin-ad-pic{" +
"width:100%;" +
"}" +
"#rwl-ad #xin-ad-code{" +
"background: #fff;" +
"text-align: center;" +
"font-size: 1.2em;" +
"color: #F4C774;" +
"transition:0.5s;" +
"padding-bottom:10px;" +
"}" +
"#rwl-ad:hover #xin-ad-code{" +
"transform:translate(0,-50%);" +
"color:red" +
"}" +
" ";
document.querySelector("#rwl-iqxin").appendChild(style);
};
document.querySelector("#rwl-setbtn").addEventListener("click",function(){
var oldEditBox = document.querySelector("#rwl-setMenu");
if(oldEditBox){
oldEditBox.parentNode.removeChild(oldEditBox);
return;
}
var userSetting = GM_getValue("rwl_userData");
var upload_checked = userSetting.connectToTheServer?"checked":"";
var odom = document.createElement("div");
odom.id = "rwl-setMenu";
odom.style.cssText ="position: absolute;" +
"top: 50px;" +
"left: 20px;" +
"padding: 10px;" +
"background: #fff;" +
"border-radius: 4px;";
var innerH = "" +
"<p>距离顶部距离(单位 像素) <input id='positiontop' type='text' value=" + userSetting.positionTop + "></p>" + "" +
"<laberl> <p>允许上传黑名单<input id='uploadchecked' type='checkbox' " + upload_checked + "></p>" + "</laberl>" +
"<p><s>显示按钮(待添加)</s></p>" +
"<p><s>按钮透明度(待添加)</s></p>" +
"<p><s>快速复制(待添加)</s></p>" +
"<p><s>关闭广告(待添加,希望能理解)</s></p>" +
"<p><s>(待添加)</s></p>" +
"<textarea wrap='off' cols='45' rows='20' style='overflow:auto;border-radius:4px;'>" + JSON.stringify(userSetting.data,false,4) + "</textarea>" +
"<br>" +
// "<button id='rwl-reset'>清空设置</button> " +
"<button id='rwl-setMenuSave'>保存</button> " +
"<button id='rwl-setMenuClose' onclick='this.parentNode.parentNode.removeChild(this.parentNode);' >关闭</button> " +
// "<button id='rwl-codeboxsave'>保存</button>" +
"<span style='font-size:0.7em;'>-- 各位小哥哥姐姐,买个桃吃呗 --</span>" +
"<div id='rwl-ad'>" +
"<span id='xin-ad-pics'>" +
"<img id='xin-ad-pic' alt='黄金油桃5斤整装' src='data:image/png;base64,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' >"+
"<div id='xin-ad-code' title='二维码'>" +
"<p>新店开张,还望多多支持</p>" +
"<p>清晨采摘,立马发货,保证新鲜</p>" +
"<p>请使用微信扫一扫</p>" +
"<img id='xin-ad-code-pic' alt='二维码' src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARgAAAEYAQMAAAC9QHvPAAAABlBMVEX///8AAABVwtN+AAACdUlEQVR4nO1awZHjMAyjxw8/XYJKcWlSaS7FJfiZR8ZcAJQu2c3MFUBHH3sieB8YAiClNbvxmlyrTc/Zz7Lrh8fqe/Vrjq3EmCcZ2Jo7X7a9YuthxZtd84NbNTNmcT+2RlqwtfOj5VRJzOAJRN0Aw9qwjaWwoEiCn/tgxE/FD70mvpg37VAysIutGUk8Nm+f+kqH6Z55zc8Fnknwgy+1ffpqNsxY3Sp3g3+AH6vNPlZGTAEL5Onki4EWGEiDLvC0rSXG0AoOPmkOURv8rraomt0SY8zWo4QuYAW9NlxdEzKz3B7D1hFMhUvsbKi6dpgkCta8GHVNm189JqidB2mpk0s7nhfDrIR2Kp9rBIfywioa6lXTRFpM52f0CQgO9ZCYm3qPlB1TaAXAqDZi1Z4gd8coObjn0UeFiFwc+ilW02Kiftglh3lyZECCgJ+LYjosMSYSEanwq5cors5qcJgUY7JKlMJz7vEwSw61OSeqkhlDformZckh4lNbkwdReTFDF/RD68HhIgxf/dHOHTGjW5romcQoJvTVq36SYiiVA2+XysZ1xghepJ232SElpmcl5yaxEXmBXrIO88yMQWukrKRANoyKmJt0nnCNg9a0GIuRwbsKQJR+A/hvptwVwwlanok6wp7zbLnEfdOZG8P6oXZ0xXJse510lrLHV6f+SlbMWPSNlRkJyVBNtb332Dkx41zdx6JdjDuF1V+zVUYMlW+vO1bzkZXk53XekhOz/MtK6UJy4NYg7IuJO+hnzwu1EODQXp6ZHjO0M4dnWu+jWmZMaKfPDqb7ZZ2lBD+pMd0zY6bWVfoSc5NipPz+n5xcmO/67/oBajcq/qSYS1MAAAAASUVORK5CYII='>" +
"<p>做个精神股东</p>" +
"<p>收藏下店铺也是极好的</p>" +
"</div>" +
"</span>" +
"</div>" +
""
"";
odom.innerHTML = innerH;
document.body.appendChild(odom);
document.querySelector("#rwl-setMenuSave").addEventListener("click",saveSetting);
})
// 保存选项
function saveSetting(){
var positionTop = document.querySelector("#rwl-setMenu #positiontop").value;
var uploadChecked = document.querySelector("#rwl-setMenu #uploadchecked").checked;
var codevalue = document.querySelector("#rwl-setMenu textarea").value;
// console.log(positionTop,uploadChecked);
if(codevalue){
console.log(JSON.parse(codevalue));
var userSetting = GM_getValue("rwl_userData");
userSetting.data = JSON.parse(codevalue);
userSetting.positionTop = parseInt(positionTop);
userSetting.connectToTheServer = uploadChecked;
GM_setValue("rwl_userData",userSetting);
// console.log(GM_getValue("searchEngineJumpData"));
// 刷新页面
setTimeout(function(){
window.location.reload();
},300);
} else {
alert("输入为空");
// this.reset();
}
closeMenu();
}
//关闭菜单
function closeMenu(){
var oldEditBox = document.querySelector("#rwl-setMenu");
if(oldEditBox){
oldEditBox.parentNode.removeChild(oldEditBox);
return;
}
}
// 增加拖动事件 func
function dragBtn(){
var rwl_node = document.querySelector("#rwl-iqxin");
// console.log(rwl_node);
rwl_node.addEventListener("mousedown",function(event){
rwl_node.style.transition = "null";
var disX = event.clientX - rwl_node.offsetLeft;
var disY = event.clientY - rwl_node.offsetTop;
var move = function(event){
rwl_node.style.left = event.clientX - disX + "px" ;
rwl_node.style.top = event.clientY - disY + "px" ;
}
document.addEventListener("mousemove",move);
document.addEventListener("mouseup",function(){
rwl_node.style.transition = "0.3s";
document.removeEventListener("mousemove",move);
// 此函数内所有的注释语句都是有用的
// 开启后,可拖动到屏幕右侧,但尚未添加css
// 在上面添加 rwl-active-iqxin 的地方加上判断左右,在加上相应的css即可
// 懒 2018-04-18 21:51:32
// var bodyWidth = document.body.clientWidth;
var rwl_nodeWidth = rwl_node.offsetLeft + rwl_node.offsetWidth/2;
// if(rwl_nodeWidth > bodyWidth/2){
// rwl_node.style.left = "auto";
// rwl_node.style.right = 0;
// rwl_userData.positionLeft = "auto";
// rwl_userData.positionRight = "0";
// } else {
rwl_node.style.right = rwl_userData.positionRight = "auto";
rwl_node.style.left = rwl_userData.positionLeft = 0;
// }
rwl_userData.positionTop = rwl_node.offsetTop;
// console.log(rwl_userData);
GM_setValue("rwl_userData",rwl_userData);
})
})
}
// 初始化 init func
function init() {
console.log("脚本-rwl-复制限制解除(改)------使用规则-----------------iqxin");
// 针对个别网站采取不同的策略
rule = clear();
// 设置 event 列表
hook_eventNames = rule.hook_eventNames.split("|");
// TODO Allowed to return value
unhook_eventNames = rule.unhook_eventNames.split("|");
eventNames = hook_eventNames.concat(unhook_eventNames);
// 调用清理 DOM0 event 方法的循环
if(rule.dom0) {
setInterval(clearLoop, 5 * 1000);
setTimeout(clearLoop, 1500);
window.addEventListener('load', clearLoop, true);
clearLoop();
}
// hook addEventListener //导致搜索跳转失效的原因
if(rule.hook_addEventListener) {
EventTarget.prototype.addEventListener = addEventListener;
document.addEventListener = addEventListener;
}
// hook preventDefault
if(rule.hook_preventDefault) {
Event.prototype.preventDefault = function() {
if(hook_eventNames.indexOf(this.type) < 0) {
Event_preventDefault.apply(this, arguments);
}
};
}
// Hook set returnValue
if(rule.hook_set_returnValue) {
Event.prototype.__defineSetter__('returnValue', function() {
if(this.returnValue !== true && hook_eventNames.indexOf(this.type) >= 0) {
this.returnValue = true;
}
});
}
// 添加CSS // console.debug('url: ' + url, 'storageName:' + storageName, 'rule: ' + rule.name);
if(rule.add_css) {
GM_addStyle('html, :not([class*="rwl-exempt"]) {-webkit-user-select:text!important; -moz-user-select:text!important;} :not([class*="rwl-exempt"]) ::selection {color:#fff; background:#3390FF; !important;}');
} //else {
//GM_addStyle('html, :not([class*="rwl-exempt"]) {-webkit-user-select:text!important; -moz-user-select:text!important;}');
//}
}
// Hook addEventListener proc
function addEventListener(type, func, useCapture) {
var _addEventListener = this === document ? document_addEventListener : EventTarget_addEventListener;
if(hook_eventNames.indexOf(type) >= 0) {
_addEventListener.apply(this, [type, returnTrue, useCapture]);
} else if(unhook_eventNames.indexOf(type) >= 0) {
var funcsName = storageName + type + (useCapture ? 't' : 'f');
if(this[funcsName] === undefined) {
this[funcsName] = [];
_addEventListener.apply(this, [type, useCapture ? unhook_t : unhook_f, useCapture]);
}
this[funcsName].push(func);
} else {
_addEventListener.apply(this, arguments);
}
}
// 清理循环
function clearLoop() {
rule = clear() // 对于动态生成的节点,随时检测
var elements = getElements();
for(var i in elements) {
for(var j in eventNames) {
var name = 'on' + eventNames[j];
// ;?未解决
// 2018-04-02 elements中会有字符串出现,原版不会,问题不明,根本原因尚未解决
// 相关反馈 https://greasyfork.org/zh-CN/forum/discussion/36014
// 问题版本号 v3.0.7
// 问题补充 之前可以使用,具体版本未测(2018-04-02 21:27:53),原版可以使用
if(Object.prototype.toString.call(elements[i])=="[object String]"){
continue;
}
if(elements[i][name] !== null && elements[i][name] !== onxxx) {
if(unhook_eventNames.indexOf(eventNames[j]) >= 0) {
elements[i][storageName + name] = elements[i][name];
elements[i][name] = onxxx;
} else {
elements[i][name] = null;
}
}
}
}
}
// 返回true的函数
function returnTrue(e) {
return true;
}
function unhook_t(e) {
return unhook(e, this, storageName + e.type + 't');
}
function unhook_f(e) {
return unhook(e, this, storageName + e.type + 'f');
}
function unhook(e, self, funcsName) {
var list = self[funcsName];
for(var i in list) {
list[i](e);
}
e.returnValue = true;
return true;
}
function onxxx(e) {
var name = storageName + 'on' + e.type;
this[name](e);
e.returnValue = true;
return true;
}
// 获取所有元素 包括document
function getElements() {
var elements = Array.prototype.slice.call(document.getElementsByTagName('*'));
elements.push(document);
return elements;
};
// 获取黑名单网站 Func
function get_black_list(){
// 之前版本可能导致存储空的字符串
// 2018-06-11 15:11:44 保留,当容错处理
var data_temp = rwl_userData.data;
data_temp = data_temp.filter(function(item){
return item.length>1;
})
return data_temp;
}
// 检查是否存在于黑名单中 返回位置 func
function check_black_list(list,host){
for(let i=0;i<list.length;i++){
if(~hostname.indexOf(list[i])){
return i+1; //万一匹配到第一个,返回0
}
}
return false;
}
// 鼠标点击后按钮后 检查是否在黑名单
function black_check(bool){
var list = GM_getValue("rwl_userData").data
var check = check_black_list(list,hostname);
console.log(list)
if (bool && !check) {
console.log(list);
list = list.concat(hostname);
console.log("选中 不在黑名单, 增加",hostname,list);
console.log("before: ",rwl_userData.waitUpload)
rwl_userData.waitUpload.push(hostname); //准备上传
rwl_userData.currentURL = window.location.href;
console.log("after: ",rwl_userData.waitUpload)
saveData(list);
init();
}else if(!bool && check){
// console.log(check-1);
console.log("check: ",check)
list.splice(check-1,1);
console.log("未选中 在黑名单, 刪除",list);
saveData(list);
// 刷新页面
setTimeout(function(){
window.location.reload(true);
console.log("刷新页面loading");
},350);
}else{
console.log("返回false");
return false;
}
}
// 保存本地数据,并将数据上传至服务器
function saveData(lists){
console.log(lists);
lists = lists.filter(function(item){
return item.length>1;
})
// 更新数据
rwl_userData.data = lists.sort();
// 将本地黑名单上传
if (rwl_userData.waitUpload.length > 0 && rwl_userData.connectToTheServer){
// console.log("rwl : 上传...",rwl_userData.waitUpload);
// console.log("rwl : 开始上传-----");
GM_xmlhttpRequest({
method: "POST",
// url: "http://127.0.0.1:8000/tool/testajax/",
url: "http://eemm.me/tool/rwl_upload/",
data: JSON.stringify(rwl_userData),
headers: {
"Content-Type": "application/x-www-form-urlencoded"
},
onload: function(response) {
// console.log("rwl : 上传成功----");
}
});
rwl_userData.waitUpload = [];
}
GM_setValue("rwl_userData",rwl_userData);
// console.log(GM_getValue("rwl_userData"));
return rwl_userData;
}
// 数组去重
function unique(arr) {
var ret = []
for (var i = 0; i < arr.length; i++) {
var item = arr[i]
if (ret.indexOf(item) === -1) {
ret.push(item)
}
}
return ret;
}
// 复制到剪贴板
function setClipboard(){
var text_obj = window.getSelection();
var text = text_obj.toString();
GM_setClipboard(text);
}
// 部分网站采用了其他的防复制手段
function clear(){
// console.log("进入clear",hostname,rwl_userData.rules);
switch (hostname){
case "www.z3z4.com": clear_covers(".moviedownaddiv"); break;
case "huayu.baidu.com": clear_covers("#jqContextMenu"); break;
case "zhihu.com":
case "www.zhihu.com": return rwl_userData.rules.rule_zhihu; break;
case "t.bilibili.com": clear_link_bilibili(); break;
case "www.shangc.net": return rwl_userData.rules.rule_plus; break;
}
return rwl_userData.rules.rule_def;
}
// 去除覆盖层
function clear_covers(ele){
var odiv = document.querySelector(ele);
if(odiv){
odiv.parentNode.removeChild(odiv);
}
}
// b站将文字嵌套在链接中
function clear_link_bilibili(){
var odiv = document.querySelector(".description");
// console.log(odiv);
if(odiv){
var tDiv = odiv.querySelector(".content-ellipsis");
var aDiv = odiv.querySelector("a");
// console.log(tDiv);
// console.log(aDiv);
odiv.appendChild(tDiv);
}
}
// 3.x.x 过渡 4.x.x 版本
function version_up_3_to_4(){
var old_version = GM_getValue("black_list");
if(!old_version){return};
rwl_userData.data = unique(rwl_userData.data.concat(old_version.data));
GM_setValue("rwl_userData",rwl_userData);
GM_deleteValue("black_list");
GM_deleteValue("rwl_userdata");
}
})();