// ==UserScript==
// @name Seach All ImageWeb
// @namespace http://tampermonkey.net/
// @version 1.2
// @description Easy for myself
// @author You
// @match https://www.google.com/search?*
// @match https://cn.bing.com/images/search?*
// @require https://cdn.staticfile.org/jquery/3.3.1/jquery.min.js
// @run-at document-end
// @grant none
// @downloadURL none
// ==/UserScript==
(function() {
'use strict';
var divStr_1 = "
";
if(window.location.href.substring(0,30) == "https://www.google.com/search?"){
GMaddStyle(`
.myK{
margin-left:645px;
position: absolute;
}
.mybtnWoW{
height:44px;
width:70px;
border-radius: 24px;
border: 1px solid #dfe1e5;
text-align:center;
line-height:45px;
cursor:pointer;
float:left;
margin-top:-46px;
background:#fff;
font-size:16px;
font-weight: bold;
position: relative;
z-index:500;
}
.mybtnWoW:hover{
box-shadow: 0 1px 6px 0 rgba(32,33,36,0.28);
border-color: rgba(223,225,229,0);
}
.myck{
position: absolute;
display:none;
}
.mysk01{
position: relative;
width:58px;
height:30px;
border-bottom: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
border-radius: 0 0 29px 0;
margin-top:-24px;
margin-left:20px;
z-index:100;
}
.mysk02{
border-radius: 0 30px 0 0;
border-top: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
width:30px;
height:30px;
margin-top:-31px;
margin-left:79px;
background:#fff;
z-index:90;
box-shadow: 4px 5px 4px rgba(32, 33, 36, 0.14);
}
.mysk03{
border-radius:24px 0 0 0;
border-top: 1px solid #dfe1e5;
border-left: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
width:108px;
height:24px;
background:#fff;
margin-top:-1px;
z-index:80;
box-shadow: 2px 5px 6px rgba(32, 33, 36, 0.28);
}
.mysk04{
width:85px;
height:1px;
background: #fff;
top: 6px;
left:24px;
position: absolute;
z-index:75;
}
.mysk05{
border-radius:0 0 24px 24px;
border-left: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
border-bottom: 1px solid #dfe1e5;
width:108px;
height:305px;
background:#fff;
z-index:70;
box-shadow: 2px 5px 6px rgba(32, 33, 36, 0.28);
}
.myxk{
width:90px;
height:180px;
z-index:110;
top: 17px;
left:10px;
position: absolute;
}
.myinput{
float:left;
width:90px;
border-radius:6px;
color: #3C4043;
}
.myinput:hover{
color: #000;
background:#eee;
}
.mybtnWoW span:nth-child(1){
color:#4285F4;
}
.mybtnWoW span:nth-child(2){
color:#EA4335;
}
.mybtnWoW span:nth-child(3){
color:#FBBD07;
}
.mybtnWoW span:nth-child(4){
color:#34A853;
}
`);
$("#sbtc").after(divStr_1 + "bing' type='checkbox' value='' checked='checked'/>bing" + divStr_2);
}else if(window.location.href.substring(0,34) == "https://cn.bing.com/images/search?"){
GMaddStyle(`
.myK{
margin-left:765px;
margin-top:-60px;
position: absolute;
}
.mybtnWoW{
height:40px;
width:70px;
border-radius: 6px;
border: 0px solid #eee;
text-align:center;
line-height:43px;
cursor:pointer;
float:left;
margin-top:-46px;
background:#fff;
font-size:16px;
font-weight: bold;
position: relative;
z-index:500;
box-shadow: 0 0 0 1px rgba(0,0,0,.1), 0 2px 4px 0 rgba(0,0,0,.16);
}
.mybtnWoW:hover{
box-shadow: 0 0 0 1px rgba(0,0,0,.1), 0 2px 4px 1px rgba(0,0,0,.18);
}
.myck{
position: absolute;
display:none;
z-index:20;
}
.mysk01{
position: relative;
width:58px;
height:30px;
border-bottom: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
border-radius: 0 0 14px 0;
margin-top:-28px;
margin-left:20px;
z-index:100;
}
.mysk02{
border-radius: 0 30px 0 0;
border-top: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
width:30px;
height:30px;
margin-top:-31px;
margin-left:79px;
background:#fff;
z-index:90;
box-shadow: 4px 5px 4px rgba(32, 33, 36, 0.14);
}
.mysk03{
border-radius:6px 0 0 0;
border-top: 1px solid #dfe1e5;
border-left: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
width:108px;
height:6px;
background:#fff;
margin-top:-1px;
z-index:80;
box-shadow: 2px 5px 6px rgba(32, 33, 36, 0.28);
}
.mysk04{
width:85px;
height:1px;
background: #fff;
top: 2px;
left:24px;
position: absolute;
z-index:75;
}
.mysk05{
border-radius:0 0 6px 6px;
border-left: 1px solid #dfe1e5;
border-right: 1px solid #dfe1e5;
border-bottom: 1px solid #dfe1e5;
width:108px;
height:370px;
background:#fff;
z-index:70;
box-shadow: 2px 5px 6px rgba(32, 33, 36, 0.28);
}
.myxk{
width:90px;
height:180px;
z-index:110;
top: 17px;
left:10px;
position: absolute;
}
.myinput{
float:left;
width:90px;
border-radius:6px;
color: #3C4043;
}
.myinput:hover{
color: #000;
background:#f1f1f1;
}
.mybtnWoW span:nth-child(1){
color:#00809d;
}
.mybtnWoW span:nth-child(2){
color:#666666;
}
.mybtnWoW span:nth-child(3){
color:#de3700;
}
.mybtnWoW span:nth-child(4){
color:#666666;
}
`);
$("#b_header").after(divStr_1 + "google' type='checkbox' value='' checked='checked'/>google" + divStr_2);
}
function GMaddStyle(cssText){
let a = document.createElement('style');
a.textContent = cssText;
let doc = document.head || document.documentElement;
doc.appendChild(a);
}
function mySelect(name,keyword){
switch(name){
case 'pixabay':
openNewWindow("https://pixabay.com/images/search/"+ keyword +"/");
break;
case 'pexels':
openNewWindow("https://www.pexels.com/search/"+ keyword +"/");
break;
case 'freeimages':
openNewWindow("https://cn.freeimages.com/search/"+ keyword);
break;
case 'unsplash':
openNewWindow("https://unsplash.com/search/photos/"+ keyword);
break;
case 'stocksnap':
openNewWindow("https://stocksnap.io/search/"+ keyword);
break;
case 'picjumbo':
openNewWindow("https://picjumbo.com/?s="+ keyword);
break;
case 'visualhunt':
openNewWindow("https://visualhunt.com/search/instant/?q="+ keyword);
break;
case 'everypixel':
openNewWindow("https://www.everypixel.com/search?q="+ keyword +"&stocks_type=free&meaning=&media_type=0&page=1");
break;
case 'gratisography':
openNewWindow("https://gratisography.com/?s="+ keyword);
break;
case 'lifeofpix':
openNewWindow("https://www.lifeofpix.com/search/"+ keyword + "?");
break;
case 'shopify':
openNewWindow("https://burst.shopify.com/photos/search?&q="+ keyword);
break;
case 'google':
openNewWindow("https://www.google.com/search?q="+ keyword + "&tbm=isch");
break;
case 'bing':
openNewWindow("https://cn.bing.com/images/search?q="+ keyword);
break;
case 'chamber':
openNewWindow("https://www.chamberofcommerce.org/findaphoto/search?q="+ keyword);
break;
case 'freemagebank':
openNewWindow("http://www.freemagebank.com/?s="+ keyword);
break;
case 'designerspics':
openNewWindow("http://www.designerspics.com/?s="+ keyword);
break;
case 'freepik':
openNewWindow("https://www.freepik.com/search?query="+ keyword + '&selection=1&sort=popular');
break;
}
}
function openNewWindow(webstr) {
let a = $("baidu").get(0);
let e = document.createEvent('MouseEvents');
e.initEvent( 'click', true, true );
a.dispatchEvent(e);
}
$.fn.hoverDelay = function(options){
var defaults = {
hoverDuring:200,
outDuring:200,
hoverEvent:function(){
$.noop();
},
outEvent:function(){
$.noop();
}
};
var sets = $.extend(defaults,options || {});
var hoverTimer,outTimer;
return $(this).each(function(){
$(this).hover(function(){
clearTimeout(outTimer);
hoverTimer = setTimeout(sets.hoverEvent,sets.hoverDuring);
},function(){
clearTimeout(hoverTimer);
outTimer = setTimeout(sets.outEvent,sets.outDuring);
});
});
}
$('body').on('click','#myJPG',function(){
if(window.location.href.substring(0,30) == "https://www.google.com/search?"){
var keyw = $('.gLFyf.gsfi').val();
}else if(window.location.href.substring(0,34) == "https://cn.bing.com/images/search?"){
keyw = $('#sb_form_q').val();
}else{
return;
}
$('.myinput input').each(function(){
if($(this).prop('checked')==true){
mySelect($(this).prop('name'),keyw);
}
});
});
$("#myJPG").hoverDelay({
hoverDuring:500,
outDuring:500,
hoverEvent: function(){
$('.myck').css('display','inline');
},
outEvent: function(){
}
});
$('body').click(function(){
$('.myck').css('display','none');
});
$('body').on('click','.myck',function(){
return false;//JS阻止事件冒泡,及不触发外面click事件
});
$('body').on('click','.myinput',function(){
if($(this).children('input').prop('checked')==true){
$(this).children('input').prop('checked',false);
}else{
$(this).children('input').prop('checked',true);
}
});
$('.myinput input').hover(function(){
if($(this).prop('checked')==true){
$(this).prop('checked',false);
}else{
$(this).prop('checked',true);
}
},function(){
});
})();