Skip to content

Commit a9586ec

Browse files
committed
add download & global fullSc key
1 parent 24f5937 commit a9586ec

1 file changed

Lines changed: 39 additions & 18 deletions

File tree

Picviewer CE+/Picviewer CE+.user.js

Lines changed: 39 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
// @description Powerful picture viewing tool online, which can popup/scale/rotate/batch save pictures or find the HD original picture automatically
77
// @description:zh-CN NLF 的围观图修改版,增加高清原图查找显示(在线看图工具,支持图片翻转、旋转、缩放、弹出大图、批量保存、查找原图)
88
// @description:zh-TW NLF 的圍觀圖修改版,增加高清原圖查詢顯示(線上看圖工具,支援圖片翻轉、旋轉、縮放、彈出大圖、批量儲存、查詢原圖)
9-
// @version 2017.7.27.2
9+
// @version 2017.7.31.1
1010
// @created 2011-6-15
1111
// @namespace http://userscripts.org/users/NLF
1212
// @homepage http://hoothin.com
@@ -1786,6 +1786,7 @@
17861786
'<span class="pv-gallery-head-command-drop-list-item" data-command="scrollIntoView" title="滚动到当前图片所在的位置">定位到图片</span>'+
17871787
'<span class="pv-gallery-head-command-drop-list-item" data-command="enterCollection" title="查看所有收藏的图片">查看收藏</span>'+
17881788
'<span class="pv-gallery-head-command-drop-list-item" data-command="exportImages" title="导出所有图片到新窗口">导出图片</span>'+
1789+
'<span class="pv-gallery-head-command-drop-list-item" data-command="downloadImage" title="下载图片">下载图片</span>'+
17891790
'<span class="pv-gallery-head-command-drop-list-item" data-command="copyImages" title="复制所有大图的地址">复制图片</span>'+
17901791
'<span class="pv-gallery-head-command-drop-list-item" title="最后几张图片时,滚动主窗口到最底部,然后自动加载新的图片">'+
17911792
'<input type="checkbox" data-command="scrollToEndAndReload"/>'+
@@ -2357,6 +2358,7 @@
23572358
},true);
23582359

23592360

2361+
var downloadEle=document.createElement("a"),srcSplit;
23602362
//命令下拉列表的点击处理
23612363
eleMaps['head-command-drop-list-others'].addEventListener('click',function(e){
23622364
if(e.button!=0)return;//左键
@@ -2414,6 +2416,12 @@
24142416
case 'exportImages':
24152417
self.exportImages();
24162418
break;
2419+
case 'downloadImage':
2420+
srcSplit=self.src.split("/");
2421+
downloadEle.href=self.src;
2422+
downloadEle.setAttribute("download",srcSplit[srcSplit.length-1]);
2423+
downloadEle.click();
2424+
break;
24172425
case 'copyImages':
24182426
self.copyImages(true);
24192427
break;
@@ -3574,7 +3582,7 @@ padding-left:24px;">'+shareItem.name+'</span>');
35743582
var container = document.querySelector('.pv-gallery-container'),
35753583
preloadContainer = document.querySelector('.pv-gallery-preloaded-img-container');
35763584
imgs = Array.prototype.slice.call(imgs).filter(function(img){
3577-
return !(container.contains(img) || preloadContainer.contains(img));
3585+
return !(container.contains(img) || (preloadContainer&&preloadContainer.contains(img)));
35783586
});
35793587
imgs.forEach(function(img) {
35803588
var isrc=img.getAttribute("src");
@@ -3649,7 +3657,7 @@ padding-left:24px;">'+shareItem.name+'</span>');
36493657
var container = document.querySelector('.pv-gallery-container'),
36503658
preloadContainer = document.querySelector('.pv-gallery-preloaded-img-container');
36513659
imgs = Array.prototype.slice.call(imgs).filter(function(img){
3652-
return !(container.contains(img) || preloadContainer.contains(img));
3660+
return !(container.contains(img) || (preloadContainer&&preloadContainer.contains(img)));
36533661
});
36543662
imgs.forEach(function(img) {
36553663
var isrc=img.getAttribute("src");
@@ -3849,7 +3857,7 @@ display:none !important;\
38493857
});
38503858
// 排除库里面的图片
38513859
imgs = imgs.filter(function(img){
3852-
return !(container.contains(img) || preloadContainer.contains(img));
3860+
return !(container.contains(img) || (preloadContainer&&preloadContainer.contains(img)));
38533861
});
38543862

38553863
// 已经在图库里面的
@@ -8290,21 +8298,34 @@ background-image:url("'+ prefs.icons.magnifier +'");\
82908298
}
82918299

82928300
function keydown(event) {
8293-
if (event.ctrlKey || event.shiftKey || event.altKey || event.metaKey)
8294-
return;
8295-
8296-
if (floatBar && floatBar.shown && isKeyDownEffectiveTarget(event.target)) {
8297-
var key = String.fromCharCode(event.keyCode).toLowerCase();
8301+
var key = String.fromCharCode(event.keyCode).toLowerCase();
8302+
if(event.ctrlKey && key==prefs.floatBar.keys['gallery']){
8303+
if(!gallery){
8304+
gallery=new GalleryC();
8305+
}
8306+
gallery.data=[];
8307+
var allData=gallery.getAllValidImgs();
8308+
if(allData.length<1)return true;
8309+
gallery.data=allData;
8310+
gallery.load(gallery.data);
8311+
event.stopPropagation();
8312+
event.preventDefault();
8313+
return true;
8314+
}else{
8315+
if (event.ctrlKey || event.shiftKey || event.altKey || event.metaKey)
8316+
return;
82988317

8299-
Object.keys(prefs.floatBar.keys).some(function(action) {
8300-
if (action == 'enable') return;
8301-
if (key == prefs.floatBar.keys[action]) {
8302-
floatBar.open(null, action);
8303-
event.stopPropagation();
8304-
event.preventDefault();
8305-
return true;
8306-
}
8307-
})
8318+
if (floatBar && floatBar.shown && isKeyDownEffectiveTarget(event.target)) {
8319+
Object.keys(prefs.floatBar.keys).some(function(action) {
8320+
if (action == 'enable') return;
8321+
if (key == prefs.floatBar.keys[action]) {
8322+
floatBar.open(null, action);
8323+
event.stopPropagation();
8324+
event.preventDefault();
8325+
return true;
8326+
}
8327+
})
8328+
}
83088329
}
83098330
}
83108331

0 commit comments

Comments
 (0)