// ==UserScript==
// @name 聚合搜索引擎切换导航[手机版][移动端]
// @namespace http://tampermonkey.net/
// @version 1.3.14
// @description 在搜索顶部显示一个聚合搜索引擎切换导航,模拟M浏览器的综合搜索引擎。专注手机网页搜索引擎切换,纯粹的搜索。SearchJump、搜索跳转、聚合搜索。
// @author PunkJet
// @include *
// @grant unsafeWindow
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_addStyle
// @run-at document-start
// @license MIT
// ==/UserScript==
const searchUrlMap = [
{
name: "必应",
searchUrl: "https://www.bing.com/search?q=",
searchkeyName: ["q"],
matchUrl:/bing\.com.*?search\?q=?/g,
mark:"Bing",
},
{
name: "百度",
searchUrl: "https://baidu.com/s?wd=",
searchkeyName: ["wd", "word"],
matchUrl:/baidu\.com.*?w(or)?d=?/g,
mark:"Baidu",
},
{
name: "谷歌",
searchUrl: "https://www.google.com/search?q=",
searchkeyName: ["q"],
matchUrl:/google\.com.*?search.*?q=/g,
mark:"Google",
},
{
name: "知乎",
searchUrl: "https://www.zhihu.com/search?q=",
searchkeyName: ["q"],
matchUrl:/zhihu\.com\/search.*?q=/g,
mark:"Zhihu",
},
{
name: "F搜",
searchUrl: "https://fsoufsou.com/search?q=",
searchkeyName: ["q"],
matchUrl:/fsoufsou\.com\/.*?q=/g,
mark:"Fsou",
},
{
name: "360",
searchUrl: "https://www.so.com/s?q=",
searchkeyName: ["q"],
matchUrl:/\.so\.com.*?q=/g,
mark:"360",
},
{
name: "无追",
searchUrl: "https://www.wuzhuiso.com/s?q=",
searchkeyName: ["q"],
matchUrl:/wuzhuiso\.com.*?q=/g,
mark:"Wuzhui",
},
{
name: "夸克",
searchUrl: "https://quark.sm.cn/s?q=",
searchkeyName: ["q"],
matchUrl:/sm\.cn.*?q=/g,
mark:"Quark",
},
{
name: "搜狗",
searchUrl: "https://m.sogou.com/web/searchList.jsp?keyword=",
searchkeyName: ["keyword"],
matchUrl:/sogou\.com.*?keyword=/g,
mark:"Sougou",
},
{
name: "头条",
searchUrl: "https://so.toutiao.com/search/?keyword=",
searchkeyName: ["keyword"],
matchUrl:/toutiao\.com.*?keyword=/g,
mark:"Toutiao",
},
{
name: "Yandex",
searchUrl: "https://yandex.com/search/touch/?text=",
searchkeyName: ["text"],
matchUrl:/((ya(ndex)?\.ru)|(yandex\.com)).*?text=/g,
mark:"Yandex",
},
{
name: "DuckDuckGo",
searchUrl: "https://duckduckgo.com/?q=",
searchkeyName: ["q"],
matchUrl:/duckduckgo\.com.*?q=/g,
mark:"DuckDuckGo",
},
{
name: "Ecosia",
searchUrl: "https://www.ecosia.org/search?q=",
searchkeyName: ["q"],
matchUrl:/ecosia\.org.*?q=/g,
mark:"Ecosia",
}
];
const punkDeafultMark = "Bing-Baidu-Google-Toutiao-Fsou-Quark-Sougou-360";
const punkAllSearchMark = "Bing-Baidu-Google-Zhihu-Fsou-360-Wuzhui-Quark-Sougou-Toutiao-Yandex-Ecosia-DuckDuckGo";
function getKeywords() {
let keywords = "";
for (let urlItem of searchUrlMap) {
if (window.location.href.match(urlItem.matchUrl) != null) {
for (let keyItem of urlItem.searchkeyName) {
if ( window.location.href.indexOf(keyItem) >= 0 )
{
let url = new URL(window.location.href);
keywords = url.searchParams.get(keyItem);
return keywords;
}
}
}
}
return keywords;
}
function addOpenSearchBox(){
const oDivtemp = document.createElement("div");
oDivtemp.id = "punk-search-open-box";
oDivtemp.style.display = "none";
document.getElementById("punkjet-search-box").after(oDivtemp);
}
const punkSocialMap = [
{
tabName:"日常",
tabList:[
{
name: "知乎",
searchUrl: "https://www.zhihu.com/search?q=",
},
{
name: "豆瓣",
searchUrl: "https://m.douban.com/search/?query=",
},
{
name: "微博",
searchUrl: "https://m.weibo.cn/search?containerid=100103&q=",
},
{
name: "哔哩哔哩",
searchUrl: "https://m.bilibili.com/search?keyword=",
},
{
name: "维基百科",
searchUrl: "https://zh.m.wikipedia.org/wiki/",
},
{
name: "searXNG",
searchUrl: "https://etsi.me/search?q=",
},
{
name: "安娜的档案",
searchUrl: "https://annas-archive.org/search?q=",
},
{
name: "Unsplash",
searchUrl: "https://unsplash.com/s/photos/",
},
{
name: "火山翻译",
searchUrl: "https://translate.volcengine.com/mobile?text=",
},
{
name: "博客园",
searchUrl: "https://zzk.cnblogs.com/s?w=",
},
],
},
{
tabName:"娱乐",
tabList:[
{
name: "知乎",
searchUrl: "https://www.zhihu.com/search?q=",
},
{
name: "豆瓣",
searchUrl: "https://m.douban.com/search/?query=",
},
{
name: "微博",
searchUrl: "https://m.weibo.cn/search?containerid=100103&q=",
},
{
name: "哔哩哔哩",
searchUrl: "https://m.bilibili.com/search?keyword=",
},
{
name: "小红书",
searchUrl: "https://m.sogou.com/web/xiaohongshu?keyword=",
},
{
name: "微信文章",
searchUrl: "https://weixin.sogou.com/weixinwap?type=2&query=",
},
{
name: "推特",
searchUrl: "https://mobile.twitter.com/search/",
},
{
name: "豆瓣阅读",
searchUrl: "https://read.douban.com/search?q=",
},
{
name: "安娜的档案",
searchUrl: "https://annas-archive.org/search?q=",
},
{
name: "即刻TV",
searchUrl: "https://www.jiketv.com/index.php/search/wd/",
},
{
name: "人人影视",
searchUrl: "https://www.rrets.cc/so/wd/",
},
{
name: "豌豆Pro",
searchUrl: "https://wandou.pro/search/",
},
{
name: "茶杯狐",
searchUrl: "https://www.cupfox.app/s/",
}
],
},
{
tabName:"开发",
tabList:[
{
name: "开发者搜索",
searchUrl: "https://kaifa.baidu.com/searchPage?wd=",
},
{
name: "GitHub",
searchUrl: "https://github.com/search?q=",
},
{
name: "Gitee",
searchUrl: "https://search.gitee.com/?q=",
},
{
name: "Stackoverflow",
searchUrl: "https://stackoverflow.com/search?q=",
},
{
name: "GreasyFork",
searchUrl: "https://gf.qytechs.cn/scripts?q=",
},
{
name: "MDN",
searchUrl: "https://developer.mozilla.org/search?q=",
},
{
name: "菜鸟教程",
searchUrl: "https://www.runoob.com/?s=",
},
{
name: "掘金",
searchUrl: "https://juejin.cn/search?query=",
},
{
name: "博客园",
searchUrl: "https://zzk.cnblogs.com/s?w=",
},
],
},
{
tabName:"网盘",
tabList:[
{
name: "狸猫网盘",
searchUrl: "https://alipansou.com/search?k=",
},
{
name: "大圣网盘",
searchUrl: "https://www.dashengpan.com/#/main/search?keyword=",
},
{
name: "大力网盘",
searchUrl: "https://www.dalipan.com/#/main/search?keyword=",
},
{
name: "罗马网盘",
searchUrl: "https://www.luomapan.com/#/main/search?keyword=",
},
],
},
{
tabName:"翻译",
tabList:[
{
name: "有道词典",
searchUrl: "https://youdao.com/m/result?word=",
},
{
name: "必应翻译",
searchUrl: "https://cn.bing.com/dict/search?q=",
},
{
name: "百度翻译",
searchUrl: "https://fanyi.baidu.com/#zh/en/",
},
{
name: "谷歌翻译",
searchUrl: "https://translate.google.com/?q=",
},
{
name: "火山翻译",
searchUrl: "https://translate.volcengine.com/mobile?text=",
},
],
},
{
tabName:"图片",
tabList:[
{
name: "谷歌搜图",
searchUrl: "https://www.google.com.hk/search?tbm=isch&q=",
},
{
name: "必应搜图",
searchUrl: "https://www.bing.com/images/search?q=秋",
},
{
name: "Flickr",
searchUrl: "http://www.flickr.com/search/?q=",
},
{
name: "Pinterest",
searchUrl: "https://www.pinterest.com/search/pins/?q=",
},
{
name: "Pixabay",
searchUrl: "https://pixabay.com/zh/images/search/",
},
{
name: "花瓣",
searchUrl: "https://huaban.com/search/?q=",
},
{
name: "Unsplash",
searchUrl: "https://unsplash.com/s/photos/",
},
],
},
];
function runTabfunc(){
var i = 0;
var tab_list = document.querySelector('#punk-tablist');
var lis = tab_list.querySelectorAll('li');
var items = document.querySelectorAll('.punk-item');
for (i = 0; i < lis.length; i++) {
lis[i].setAttribute('index', i);
lis[i].onclick = function () {
for (var i = 0; i < lis.length; i++) {
lis[i].className = '';
}
this.className = 'punk-current';
var index = this.getAttribute('index');
for (i = 0; i < items.length; i++) {
items[i].style.display = 'none';
}
items[index].style.display = 'block';
}
}
}
function addSingleTab(node, tabList){
var ulList = document.createElement('ul');
node.appendChild(ulList);
let fragment = document.createDocumentFragment();//创建一个文档碎片,减少DOM渲染次数
for (let index = 0; index < tabList.length; index++) {
let liItem = document.createElement('li');
let a = document.createElement("a");
a.innerText = tabList[index].name;
a.href = tabList[index].searchUrl + getKeywords();
liItem.appendChild(a);
fragment.appendChild(liItem);
}
ulList.appendChild(fragment);
return node;
}
function addJumpSearchBox(){
const searchJumpBox = document.createElement("div");
searchJumpBox.id = "punk-search-jump-box";
searchJumpBox.style.display = "none";
document.getElementById("punkjet-search-box").appendChild(searchJumpBox);
const searchAllBox = document.createElement("div");
searchAllBox.id = "punk-search-all-app";
searchJumpBox.appendChild(searchAllBox);
let jumpAllSearchTitle = document.createElement("h1");
jumpAllSearchTitle.innerText = "✰全部搜索引擎";
searchAllBox.appendChild(jumpAllSearchTitle);
addSingleTab(searchAllBox, searchUrlMap);
const punkTabList = document.createElement("div");
punkTabList.id = "punk-tablist";
let jumpSocialTitle = document.createElement("h1");
jumpSocialTitle.innerText = "@社交网络";
punkTabList.appendChild(jumpSocialTitle);
var ulListq = document.createElement('ul');
punkTabList.appendChild(ulListq);
let fragmentq = document.createDocumentFragment();//创建一个文档碎片,减少DOM渲染次数
for (let index = 0; index < punkSocialMap.length; index++) {
let liItemq = document.createElement('li');
if (index == 0)
{
liItemq.className = "punk-current";
}
liItemq.innerText = punkSocialMap[index].tabName;
fragmentq.appendChild(liItemq);
}
ulListq.appendChild(fragmentq);
searchJumpBox.appendChild(punkTabList);
const punkTabListcontent = document.createElement("div");
punkTabListcontent.className = "tab-content";
let fragmentr = document.createDocumentFragment();//创建一个文档碎片,减少DOM渲染次数
for (let index = 0; index < punkSocialMap.length; index++) {
let liItemr = document.createElement('div');
liItemr.className = "punk-item";
if (index == 0){
liItemr.style.display = `block`;
}else {
liItemr.style.display = `none`;
}
liItemr = addSingleTab(liItemr, punkSocialMap[index].tabList);
fragmentr.appendChild(liItemr);
}
punkTabListcontent.appendChild(fragmentr);
searchJumpBox.appendChild(punkTabListcontent);
let jumpSortTitle = document.createElement("h1");
jumpSortTitle.innerText = "☯导航栏排序";
searchJumpBox.appendChild(jumpSortTitle);
let jumpSortDesc = document.createElement("div");
jumpSortDesc.className = "jump-sort-discription";
searchJumpBox.appendChild(jumpSortDesc);
let a2 = document.createElement("a");
a2.innerText = "说明:除搜索引擎,其他站只跳转无导航\n支持的格式:" + punkAllSearchMark;
jumpSortDesc.appendChild(a2);
let punkJumpButton = document.createElement("button");
punkJumpButton.innerText = "点击输入排序";
punkJumpButton.className = "punk-jump-sort-btn";
searchJumpBox.appendChild(punkJumpButton);
punkJumpButton.onclick = function () {
let sss = prompt("请输入需要显示的引擎!\n格式举例:Quark-Zhihu-Toutiao-360\n则导航为:夸克、知乎、头条、360");
if (sss) {
GM_setValue("punk_setup_search", sss);
setTimeout(function(){location.reload();}, 200);
}
//alert("用户设置" + GM_getValue("punk_setup_search"));
}
let punkJumpClose = document.createElement("button");
punkJumpClose.innerText = "收起";
punkJumpClose.className = "punk-jump-sort-btn";
searchJumpBox.appendChild(punkJumpClose);
punkJumpClose.onclick = function () {
document.getElementById("punk-search-jump-box").style.display = `none`;
}
}
function punkSearchClickFunction(){
let btnPunkOpen = document.querySelector("#punk-search-open-box");
btnPunkOpen.onclick = function () {
var x = document.getElementById("punkjet-search-box");
if (x.style.display == "none") {
x.style.display = "block";
document.getElementsByTagName('body')[0].style = "margin-top: 35px !important;";
} else {
x.style.display = "none";
document.getElementsByTagName('body')[0].style = "margin-top: 0px !important;";
}
}
let btnSet = document.querySelector("#search-setting-box");
btnSet.onclick = function () {
var punkjump = document.getElementById("punk-search-jump-box");
if (punkjump.style.display === "none") {
punkjump.style.display = "block";
} else {
punkjump.style.display = `none`;
}
}
let btnClose = document.querySelector("#search-close-box");
let punkNavi = document.querySelector("#punkjet-search-box");
btnClose.onclick = function () {
var x = document.getElementById("punk-search-open-box");
if (x.style.display === "none") {
x.style.display = "block";
}
punkNavi.style.display = `none`;
document.getElementsByTagName('body')[0].style = "margin-top: 0px !important;";
}
}
function addSearchBox() {
const punkJetBox = document.createElement("div");
punkJetBox.id = "punkjet-search-box";
const searchBox = document.createElement("div");
searchBox.id = "punk-search-navi-box";
punkJetBox.appendChild(searchBox);
const needHidebox = document.createElement("div");
needHidebox.id = "punk-need-hide-box";
searchBox.appendChild(needHidebox);
const appBoxDiv = document.createElement("div");
appBoxDiv.id = "punk-search-app-box";
needHidebox.appendChild(appBoxDiv);
var ulList = document.createElement('ul');
appBoxDiv.appendChild(ulList);
let fragment = document.createDocumentFragment();//创建一个文档碎片,减少DOM渲染次数
let showList = GM_getValue("punk_setup_search").split('-');
for (let showListIndex = 0; showListIndex < showList.length; showListIndex++) {
for (let index = 0; index < searchUrlMap.length; index++) {
let item = searchUrlMap[index];
if (item.mark == showList[showListIndex]) {
let liItem = document.createElement('li');
let a = document.createElement("a");
a.innerText = item.name;
//if ( window.location.href.indexOf(item.matchUrl) >= 0 ) {
if (window.location.href.match(item.matchUrl) != null) {
a.className = "search-engine-highlight";
}
a.href = item.searchUrl + getKeywords();
liItem.appendChild(a);
fragment.appendChild(liItem);
break;
}
}
}
ulList.appendChild(fragment);
const setBoxDiv = document.createElement("div");
setBoxDiv.id = "search-setting-box";
setBoxDiv.innerHTML = `<span id="punkBtnSet"><p></p > </span>`;
needHidebox.appendChild(setBoxDiv);
const closeBoxDiv = document.createElement("div");
closeBoxDiv.id = "search-close-box";
closeBoxDiv.innerHTML = `<span id="punkBtnClose"><p></p ></span>`;
searchBox.appendChild(closeBoxDiv);
document.getElementsByTagName('head')[0].after(punkJetBox);
}
(function () {
"use strict";
const css =
`
#punkjet-search-box{
position: fixed;
flex-direction: column;
top: 0px;
left: 0px;
width: 100%;
height:35px;
background-color: #FFFFFF !important;
font-size: 15px;
z-index: 9999999;
justify-content: flex-end;
}
#punk-search-navi-box {
display: -webkit-flex;
display:flex;
width: 100%;
height:35px;
}
#punk-search-jump-box{
padding: 8px;
background-color: #FFFFFF !important;
max-width:480px;
float:right;
max-height: calc(80vh);
overflow: scroll;
box-shadow:0px 0px 1px 0px #000000;
-ms-overflow-style: none; /* IE and Edge */
scrollbar-width: none; /* Firefox */
}
#punk-search-jump-box::-webkit-scrollbar {
display: none;
}
#punk-search-app-box {
flex:1;
width: 0;
}
#punk-need-hide-box{
flex:1;
width: 0;
display:flex;
}
#search-setting-box {
flex: 0 0 30px;
text-align: center;
margin: auto;
background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABQRJREFUaEPdWT1uHDcU5httkS7KBRIbSB+7S5eVSDVpEp8gcpHa0gninCDyCbw6gaUiQACR61GjNvYBgqyRA0SqtMUOX/CtOYMZLjlD7k4CKARUjJZ85Pfe9374SOKBD3rg5xejAVBKfSeEeCKEmDql7LtvfL4TQty6/5f41lpfjqG8nQBIKX8QQnyPQxMRDpw8mBmAAObCGHOevNCbuBUApRS0/EtLw9vuX6+DhU611gCUNbIAHB0dPWFmHLymSdZmCZNLIjq9uroCoKSRDEBKCaq8jlGFmT/UlCCiW/zVB3HA95kZNKsp90XohKAWET1LtUYSACnlCyI6i2x4XhTFWY7WIAegrLUnRAQ/2hjW2ufz+Xw2ZIZBAFJKaP04IOh6tVodl2W5GNqk73dnHSjnG38eM8+MMc/71vcCUEqdOGftyEjVTg6ww8PD46IoXvtrhvaKAgDnieiNJ/AOHE7lZw4AzHXR7UII8am39iC2ZxCA4+dbz2HviGiay/VcEI5SCKcNCDh2URQHob2DAJRSbwOhMqoFHHI6ne7v7e2tHbKqqvOyLOvMm4uhtgTO0B6l1vrAF7YBwJmxs3iIh9Pp9NFkMgHdUEoIZj43xoQcPxlMxCc2lBgC8LuXYa+11tHEFaGb0FoPRrghNEopUKkdnVBDPW2v62wSQr1arR7HQmUscjDzK2MMIthOw/kDFNoMnw0dAEopRABUlevRRwUp5RkRvfBPiDVVVZ3s4gNtmVLKmZfsLrXWyObr0QEgpfy7HXmI6Knv+c5ZkdwaIa0Nf9Zav9xJ7d5i3wqISMaYzzYA+HEftY0x5pF/mIBGMGXJzL8RUXIR1pbLzIuqqi5jVpNSLoioXTs1ztxYwKdEjD5KKR5Tw4l09WnUWLoB4Hs8Mz8zxsAnOkNKyUQflzF/xFJ/7wIsZnHIDFQFTWSMAhBCBBOXUupXIcS3NYAxDj8UMAK5aROAlPJPImo43xc+nUbWSWuMYa1dWGsvYj4QCKdNPmhboMPtMRLRGOBqGb7v1ef7/wDwQ1UfhcbUbIqsQC54b4xZUzjbiVtR4auUzfvmWGs/ISLIWd7f35/e3NzgXr0xkpw4NYz65cYuIBCGW1HsL6315yF5SWH0v0pk3qGb8zKzNcbsRQAMJ7JAKbEwxjz2Be5qgRgAa+0f8/n8ywiATohv5yi/GsUtqrnKhYq5lg8k5wFwvSgK1PVfhw5orb1aLpc/hnwgkAPutNZNG3PrcjqV+3BAZkb1ulEYonxAy6avSZBVTocuKDErDAFA2T2ZTH4SQgQvNrj0VFX1su/ekH2hcfR450JbfcbgZXoIQKTsRgE4qPVW9u00F5i5if/1nFEu9ZHY3fEnzEnRei1r60s9BAQu0/h3b1ulL1rlaN3tjyaC31YJNheijS1mTm4uhSzgfAD8v12tVrPUO3JuUy2rtZjb+h7yk4DVELHeBFr4ea3FlhM93OZuDSIWTfCYkfuaErJI36tPSocvqXsWa7O7yDIriuJVbtPXcR0PJ8EW5FA7MxpGY7ztaX2vl6A14qxygeclIcRd+4kJJQqemJi5fmLayMxu76wWfpIFalB9rym5DhuZf01EJznWzALQcm5EC7QWd77UOOu9x8G3eTjZCoCXLdeUCLyqDBkFVCnRjUh5zIsJ2wlAW2ir1bJuxYPvtYVQwzi/wE9IkKivsh+1QyBGAzCk7n/r9wcP4B+74kxeh9FZygAAAABJRU5ErkJggg==) no-repeat center;
background-size:contain;
width:100%;
height:18px;
}
#search-close-box {
flex: 0 0 29px;
text-align: center;
margin: auto;
background:url(data:image/png;base64,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) no-repeat center;
background-size:contain;
width:100%;
height:18px;
}
#punk-search-app-box ul {
margin: 0;
padding: 0;
overflow: hidden;
overflow-x: auto;
list-style: none;
white-space:nowrap;
}
#punk-search-app-box ul::-webkit-scrollbar {
display: none !important;
}
#punk-search-app-box li {
margin-left: 0px;
display: inline-block;
border-radius: 2px;
vertical-align: middle;
}
#punk-search-app-box ul li a {
display: block;
color: #666666 !important;
padding: 8px;
text-decoration: none;
font-weight:bold;
font-family:Helvetica Neue,Helvetica,Arial,Microsoft Yahei,Hiragino Sans GB,Heiti SC,WenQuanYi Micro Hei,sans-serif;
}
.search-engine-highlight {
background-color:#ECEFF1;
}
#punk-search-open-box {
position:fixed;
left:22px;
bottom:64px;
height:36px;
width:36px;
font-size:15px;
text-align: center;
padding: 10px;
border-radius: 5px;
z-index:9999998;
background:url(data:image/png;base64,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) no-repeat center;
background-size:contain;
}
#punk-search-open-box, ::after, ::before {
box-sizing: initial !important;
}
#punk-search-jump-box h1{
font-size: 15px !important;
color: #444444 !important;
font-weight:bold;
margin:7px 4px;
}
#punk-search-jump-box ul {
margin-left:0px;
padding: 0;
overflow: hidden;
overflow-x: auto;
list-style: none;
}
#punk-search-jump-box li {
margin: 4px;
display: inline-block;
vertical-align: middle;
border-radius: 4px;
background-color: hsla(204, 48%, 14%, 0.1) !important;
}
#punk-search-jump-box a {
display: block;
color: #263238 !important;
padding: 3px;
margin:2px;
font-size: 14px;
text-decoration: none;
font-family: Helvetica Neue,Helvetica,Arial,Microsoft Yahei,Hiragino Sans GB,Heiti SC,WenQuanYi Micro Hei,sans-serif;
}
.jump-sort-discription {
margin:5px 4px;
}
.punk-jump-sort-btn {
background-color: #0026A69A;
border: none;
color: white;
padding: 8px 64px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 13px;
margin: 4px 5px;
cursor: pointer;
border-radius: 4px;
width: 97%;
}
body {
margin-top: 35px !important;
position: relative !important;
}
.his-wrap-new .fix-wrap {
top:35px !important;
}
#punk-tablist {
height: 65px;
margin-top:20px;
}
#punk-tablist li {
float: left;
height: 18px;
background-color: hsla(0, 100%, 100%, 0) !important;
color: #666666 !important;
text-align: center;
cursor: pointer;
margin: 4px 8px;
}
#punk-tablist ul {
height: 39px;
}
.punk-current {
text-decoration: underline 3px #0026A69A;
text-underline-offset:0.4em;
}
.punk-current li {
color:#0026A69A !important;
}
.tab-content {
margin-bottom:20px;
}
`
for (let index = 0; index< searchUrlMap.length; index++) {
if (window.location.href.match(searchUrlMap[index].matchUrl) != null) {
if (getKeywords() != null){
if (!GM_getValue("punk_setup_search")) {
GM_setValue("punk_setup_search", punkDeafultMark);
}
GM_addStyle(css);
addSearchBox();
addJumpSearchBox();
addOpenSearchBox();
punkSearchClickFunction();
runTabfunc();
}
}
}
})();