// ==UserScript== // @name 头条搜索增强 // @namespace http://tampermonkey.net/ // @version 1.2 // @description 单/双列自适应、去重定向、美化样式、PC端自动翻页、移动端悬浮底栏 // @author tutu辣么可爱(greasyfork)/IcedWatermelonJuice(github) // @require https://greasyfork.org/scripts/415581-jquery%E5%BA%93/code/jquery%E5%BA%93.js?version=866373 // @match https://so.toutiao.com/search* // @icon http://toutiao.com/favicon.ico // @grant GM_addStyle // @run-at document-start // @license MIT License // @data css v22.11.16.0 // @downloadURL https://update.greasyfork.icu/scripts/454828/%E5%A4%B4%E6%9D%A1%E6%90%9C%E7%B4%A2%E5%A2%9E%E5%BC%BA.user.js // @updateURL https://update.greasyfork.icu/scripts/454828/%E5%A4%B4%E6%9D%A1%E6%90%9C%E7%B4%A2%E5%A2%9E%E5%BC%BA.meta.js // ==/UserScript== (function() { 'use strict'; const css = `[data-css-device=pc] .main{width:100% !important}[data-css-device=pc] .s-result-list{display:grid;grid-template-columns:50% 50%;grid-gap:8px;margin:0 160px !important;max-width:100% !important;width:calc(100% - 320px) !important}[data-css-device=pc] .s-result-list .result-content:first-child,[data-css-device=pc] .s-result-list .whole-row-item{grid-column-start:1;grid-column-end:3}@media (max-width:1000px){[data-css-device=pc] .s-result-list{grid-template-columns:100%;width:calc(100% - 20px) !important;margin:0 10px !important}[data-css-device=pc] .s-result-list .result-content:first-child,[data-css-device=pc] .s-result-list .whole-row-item{grid-column-start:1;grid-column-end:2}}@media (max-width:900px){[data-css-device=pc] .logoWrap_D3HTJ a:not([class]){display:none;}[data-css-device=pc] .logoWrap_D3HTJ_ .logo_3DlEdN svg{display:none;}[data-css-device=pc] .logoWrap_D3HTJ_ .logo_3DlEdN{width:40px;height:40px;background:url(http://toutiao.com/favicon.ico) no-repeat;background-size:contain;padding:0;}}@media (max-width:800px){[data-css-device=pc] .logoWrap_D3HTJ_ .logo_3DlEdN{display:none;}}[data-css-device=pc] .s-result-list .result-content[data-i],[data-css-device=pc] .s-result-list .radius-solid-border{border:1px solid var(--black-6);border-radius:5px;padding:12px}[data-css-device=pc] .main .s-side-list{display:none !important}[data-css-device=pc] .result-content .logoWrap_D3HTJ,[data-css-device=pc] .result-content .wrap_2lSYxG{min-width:100% !important;}[data-css-device=pc] .result-content .nav_2v7eXx{padding:16px 10px 12px !important;justify-content:center !important}[data-css-device=pc] .result-content .searchWrap_14Gtni{position:absolute;left:50%;transform:translateX(-50%);max-width:588px;width:calc(100% - 20px);}[data-css-device=pc] .margin-top-24-important{margin-top:24px !important;}[data-css-device=pc] .auto-loading-notice[data-pos=bottom] span{background-image:-webkit-linear-gradient(right,#0000007f,#0000005f 25%,#0000007f 50%,#0000005f 75%,#0000007f 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;-webkit-background-size:200% 100%;-webkit-animation:streamer-text-animation 1s linear infinite;}@keyframes streamer-text-animation{0%{background-position:0 0;}100%{background-position:-100% 0;}}[data-css-device=pc] .auto-loading-notice[data-pos=center]{width:200px;height:50px;position:fixed;left:50%;top:50%;transform:translateX(-50%);color:white;line-height:50px;backdrop-filter:blur(4px);background-color:rgba(34,34,34,.3);border-radius:15px}[data-css-device=mobile] #head-bar nav{text-align:center;}[data-css-device=mobile] #results{display:grid;grid-template-columns:repeat(2,calc(50% - 5px));grid-gap:10px;padding:10px 10px 20px;}[data-css-device=mobile][data-css-page=xiaoshipin] #results,[data-css-device=mobile][data-css-page=atlas] #results{display:block !important;}@media (max-width:800px){[data-css-device=mobile] #results{grid-template-columns:100%;}}[data-css-device=mobile] #results .result-content .l-card-bg{background-color:transparent !important;}[data-css-device=mobile] #results .result-content{background-color:var(--bg-card);border-radius:15px;height:100%;}[data-css-device=mobile] .ghost-search-bar{position:fixed;bottom:0;left:50%;width:100% !important;transform:translateX(-50%);z-index:99999;border-radius:15px;}[data-css-device=mobile] .ghost-search-bar input{text-align:center !important;margin-left:-30px;}[data-css-device=mobile] #page-bottom .logo_3Mdxl3{display:none;}[data-css-device=mobile] #page-bottom .from_1OKQFa{display:none;}[data-css-device=mobile] #page-bottom .formWrap{display:none;}`; const device = location.search.search("dvpf=pc") >= 0 ? "pc" : "mobile"; const enableMap = { map: { pc: ["synthesis", "information", "user", "question", "weitoutiao", "baike", "music"], mobile: ["*"] }, check: function(d, p) { var m = this.map, ck=m.hasOwnProperty(d) && (m[d].indexOf("*") > -1 || m[d].indexOf(p) > -1); $("html").attr("data-css-device", ck?d:""); $("html").attr("data-css-page", ck?p:""); return ck } } var page = new URL(location.href).searchParams.get("pd") || "synthesis"; GM_addStyle(css); if (!enableMap.check(device, page)) { return } if (device === "pc") { function otherCss(dom, index = 1) { dom = dom instanceof jQuery ? dom : $(dom); dom.attr("data-res-id", index); $(`
`) .insertBefore(dom.children(".result-content[data-i=0]:first")); dom.find(".result-content.current-page-notice a").click((e) => { e = $(e.target).text(); if (/首页/.test(e)) { $("html,body").animate({ scrollTop: 0 }, 500); } else if (/导航/.test(e)) { $("html,body").animate({ scrollTop: dom.offset().top + dom.height() - $(window).height() }, 500); } }) dom.children(".result-content:not([data-i])").each((i, e) => { e = $(e); if (e.children("[shared]")[0]) { e.addClass("whole-row-item text-center margin-top-24-important"); if (/下一页|上一页/.test(e.text())) { e.attr("data-nav-id", index); e.find("a[data-search]").each((i, a) => { a = $(a); if (a.text() === "下一页") { a.data("targetID", index + 1) } else if (a.text() === "上一页") { a.data("targetID", (index - 1) < 1 ? 1 : (index - 1)) } else { a.data("targetID", a.text()) } a.click((e) => { e.preventDefault() navJump(a.data("targetID")); }) }) } else { e.hide(); } } }) dom.children(".result-content[data-i]:last").addClass("whole-row-item").hide(); console.group(); dom.find(".result-content[data-i] a").each((i, e) => { if (e.href.indexOf("/search/jump?url=") !== -1) { var url = new URL(e.href).searchParams.get("url"); console.log("重定向: " + e.href + " --> " + url) e.href = url; } }) console.groupEnd(); } function navJump(id) { id = typeof id === "number" ? id : parseInt(id); if (!$(".s-result-list").is(":visible") || !id) { return false } function load(id, waitTime = false) { if ($(".s-result-list").length >= id) { $(".auto-loading-notice[data-pos=center]").remove(); var target = $(`.s-result-list[data-res-id=${id}]`).is(":visible") ? $( `.s-result-list[data-res-id=${id}]`) : $(`.s-result-list:last`); if (waitTime) { setTimeout(() => { $("html,body").animate({ scrollTop: target.offset().top - 85 }, 500); }, 210) } else { $("html,body").animate({ scrollTop: target.offset().top - 85 }, 500); } return false } if ($(".auto-loading-notice[data-pos=center]").is(":visible")) { $(".auto-loading-notice[data-pos=center] span").text( `正在加载(${$(".s-result-list").length}/${id})`) } else { $("body").append( `