Skip to content

Commit ebd3090

Browse files
committed
新增 隐藏分享链接窗口(这样自动打开/复制分享链接时,不会一闪而过了)
1 parent 543b073 commit ebd3090

1 file changed

Lines changed: 47 additions & 35 deletions

File tree

Lanzou-Enhanced.user.js

Lines changed: 47 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ==UserScript==
22
// @name 蓝奏云网盘增强
3-
// @version 1.2.0
3+
// @version 1.2.1
44
// @author X.I.U
55
// @description 刷新不回根目录、后退返回上一级、右键文件显示菜单、自动显示更多文件、自动打开分享链接、自动复制分享链接、拖入文件自动显示上传框、调整描述(话说)编辑框初始大小
66
// @match *://*.lanzous.com/*
@@ -91,9 +91,9 @@
9191
};
9292

9393

94-
if(document.getElementById("infos")){ // 分享链接文件列表页
95-
setTimeout(fileMoreS, 300); // 自动显示更多文件
96-
}else if(document.querySelector("iframe.ifr2")){ // 分享链接文件下载页(暂时没有这方面的功能,先空着)
94+
if(document.getElementById("infos")){ // 分享链接文件列表页
95+
setTimeout(fileMoreS, 300); // 自动显示更多文件
96+
}else if(document.querySelector("iframe.ifr2")){ // 分享链接文件下载页(暂时没有这方面的功能,先空着)
9797
//console.log()
9898
}else if(document.getElementById("mainframe") || window.top.location.href.indexOf("mydisk.php?") > -1){ // 后台页
9999
if(window.top.location.href != "https://pc.woozooo.com/mydisk.php"){
@@ -107,16 +107,17 @@
107107
// 获取 iframe 框架
108108
function iframe() {
109109
mainframe = document.getElementById("mainframe");
110-
if(mainframe){ // 只有找到 iframe 框架时才会继续运行脚本
110+
if(mainframe){ // 只有找到 iframe 框架时才会继续运行脚本
111111
mainframe = mainframe.contentWindow;
112112
if(menu_refreshCorrection){
113-
refreshCorrection(); // 刷新不返回根目录(F5)
113+
refreshCorrection(); // 刷新不返回根目录(F5)
114114
}
115-
setTimeout(folderDescdes, 200); // 调整话说编辑框初始大小
116-
fobiddenBack(); // 禁止浏览器返回(并绑定新的返回事件)
117-
EventXMLHttpRequest(); // 监听 XMLHttpRequest 事件并执行 [自动显示更多文件]
115+
setTimeout(folderDescdes, 200); // 调整话说编辑框初始大小
116+
setTimeout(hideSha, 200); // 隐藏分享链接窗口(这样自动打开/复制分享链接时,不会一闪而过)
117+
fobiddenBack(); // 禁止浏览器返回(并绑定新的返回事件)
118+
EventXMLHttpRequest(); // 监听 XMLHttpRequest 事件并执行 [自动显示更多文件]
118119

119-
dragEnter(); // 拖入文件自动显示上传框
120+
dragEnter(); // 拖入文件自动显示上传框
120121
}
121122
}
122123

@@ -154,20 +155,20 @@
154155

155156
// 右键文件显示菜单
156157
function rightClickMenu() {
157-
if(menu_rightClickMenu){ // 脚本菜单开启时才继续
158+
if(menu_rightClickMenu){ // 脚本菜单开启时才继续
158159
rightClickMenu_("sub_folder_list", "fols", "folse") // 文件夹
159-
rightClickMenu_("filelist", "fs", "fse") // 文件
160+
rightClickMenu_("filelist", "fs", "fse") // 文件
160161
}
161162
}
162163

163164

164165
// 右键文件显示菜单,参数:文件/文件夹列表 ID、菜单 ID 前缀
165166
function rightClickMenu_(list_id_name, menu_id_name_prefix, list_id_name_prefix) {
166167
let list_ = mainframe.document.getElementById(list_id_name);
167-
if(list_){ // 文件/文件夹列表
168+
if(list_){ // 文件/文件夹列表
168169
list_.oncontextmenu = function(e){
169-
e.preventDefault(); // 屏蔽浏览器自身右键菜单
170-
let left = e.pageX - 30; // 右键菜单弹出位置
170+
e.preventDefault(); // 屏蔽浏览器自身右键菜单
171+
let left = e.pageX - 30; // 右键菜单弹出位置
171172
let list_ID = e.target.id;
172173
if(e.target.nodeName == "FONT"){
173174
list_ID = e.target.parentNode.parentNode.id
@@ -188,9 +189,9 @@
188189
// 自动显示更多文件(后台页)
189190
function fileMore() {
190191
let filemore = mainframe.document.getElementById("filemore"); // 寻找 [显示更多文件] 按钮
191-
if(filemore && filemore.style.display == "block"){ // 判断按钮是否存在且可见
192-
if(filemore.children[0]){ // 判断按钮元素下第一个元素是否存在
193-
filemore.children[0].click(); // 点击 [显示更多文件] 按钮
192+
if(filemore && filemore.style.display == "block"){ // 判断按钮是否存在且可见
193+
if(filemore.children[0]){ // 判断按钮元素下第一个元素是否存在
194+
filemore.children[0].click(); // 点击 [显示更多文件] 按钮
194195
}
195196
}
196197
}
@@ -199,8 +200,8 @@
199200
// 自动显示更多文件(分享链接列表页)
200201
function fileMoreS() {
201202
let filemore = document.getElementById("filemore"); // 寻找 [显示更多文件] 按钮
202-
if(filemore && filemore.style.display != "none"){ // 判断按钮是否存在且可见
203-
filemore.click(); // 点击 [显示更多文件] 按钮
203+
if(filemore && filemore.style.display != "none"){ // 判断按钮是否存在且可见
204+
filemore.click(); // 点击 [显示更多文件] 按钮
204205
}
205206
}
206207

@@ -209,15 +210,15 @@
209210
function folderDescdes() {
210211
if(menu_folderDescdesMenu) {
211212
let folderdescdes = mainframe.document.getElementById("folder_descdes"); // 寻找话说(描述)编辑框
212-
if(folderdescdes){ // 判断话说(描述)元素是否存在
213+
if(folderdescdes){ // 判断话说(描述)元素是否存在
213214
folderdescdes.style.cssText="margin: 15px 0px; width: 550px; height: 125px;"
214215
}
215-
let folderdescdes2 = mainframe.document.getElementById("fol_credes"); // 寻找话说(描述)编辑框
216-
if(folderdescdes2){ // 判断话说(描述)元素是否存在
216+
let folderdescdes2 = mainframe.document.getElementById("fol_credes"); // 寻找话说(描述)编辑框
217+
if(folderdescdes2){ // 判断话说(描述)元素是否存在
217218
folderdescdes2.style.cssText="margin: 15px 0px; width: 550px; height: 125px;"
218219
}
219-
let folderdescdes3 = mainframe.document.getElementById("file_desc"); // 寻找话说(描述)编辑框
220-
if(folderdescdes3){ // 判断话说(描述)元素是否存在
220+
let folderdescdes3 = mainframe.document.getElementById("file_desc"); // 寻找话说(描述)编辑框
221+
if(folderdescdes3){ // 判断话说(描述)元素是否存在
221222
folderdescdes3.style.cssText="margin: 15px 0px; width: 550px; height: 125px;"
222223
}
223224
}
@@ -241,33 +242,33 @@
241242
// 分享链接相关(点击文件时)
242243
function fileSha() {
243244
var f_sha = mainframe.document.getElementById("f_sha"); // 寻找分享链接(下载链接)信息框
244-
if(f_sha && f_sha.style.display == "block"){ // 判断信息框是否存在且可见
245-
fileSha_Open(); // 自动打开分享链接(点击文件时)
246-
fileSha_Copy(); // 自动复制分享链接(点击文件时)
245+
if(f_sha && f_sha.style.display == "block"){ // 判断信息框是否存在且可见
246+
fileSha_Open(); // 自动打开分享链接(点击文件时)
247+
fileSha_Copy(); // 自动复制分享链接(点击文件时)
247248
if(menu_open_fileSha || menu_copy_fileSha){
248-
f_sha.style.display = "none"; // 隐藏分享链接(下载链接)信息框
249+
f_sha.style.display = "none"; // 隐藏分享链接(下载链接)信息框
249250
}
250251
}
251252
}
252253

253254

254255
// 自动打开分享链接(点击文件时)
255256
function fileSha_Open() {
256-
if(menu_open_fileSha){ // 脚本菜单开启时才继续
257+
if(menu_open_fileSha){ // 脚本菜单开启时才继续
257258
let code = mainframe.document.getElementById("code").getAttribute("title"); // 获取分享链接(下载链接)
258-
if(code != ""){ // 确保分享链接(下载链接)不是空
259-
window.GM_openInTab(code, {active: true,insert: true,setParent: true}) // 打开分享链接(下载链接)
259+
if(code != ""){ // 确保分享链接(下载链接)不是空
260+
window.GM_openInTab(code, {active: true,insert: true,setParent: true}) // 打开分享链接(下载链接)
260261
}
261262
}
262263
}
263264

264265

265266
// 自动复制分享链接(点击文件时)
266267
function fileSha_Copy() {
267-
if(menu_copy_fileSha){ // 脚本菜单开启时才继续
268+
if(menu_copy_fileSha){ // 脚本菜单开启时才继续
268269
let f_sha1 = mainframe.document.getElementById("f_sha1").innerText; // 获取分享链接(下载链接)
269-
if(f_sha1 != ""){ // 确保分享链接(下载链接)不是空
270-
copyToClipboard(f_sha1); // 复制到剪切板
270+
if(f_sha1 != ""){ // 确保分享链接(下载链接)不是空
271+
copyToClipboard(f_sha1); // 复制到剪切板
271272
}
272273
}
273274
}
@@ -290,6 +291,17 @@
290291
}
291292

292293

294+
// 隐藏分享链接窗口(这样自动打开/复制分享链接时,不会一闪而过)
295+
function hideSha(){
296+
if(menu_open_fileSha || menu_copy_fileSha){ // [自动复制分享链接] 或 [自动打开分享链接] 任意一个功能开启时才继续
297+
let style_Add = mainframe.document.createElement('style');
298+
style_Add.type = 'text/css';
299+
style_Add.innerHTML = `#f_sha {display: none !important;}`;
300+
mainframe.document.head.appendChild(style_Add);
301+
}
302+
}
303+
304+
293305
// 禁止浏览器返回(并绑定新的返回事件)
294306
function fobiddenBack() {
295307
history.pushState(null, null, document.URL);

0 commit comments

Comments
 (0)