您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
该脚本能够放大Steam平台的大部分界面元素,提升阅读和操作体验;在CSGO社区市场详情页显示Buff平台的价格对比并提供跳转链接,方便用户快速查看和购买;同时在游戏详情页添加快捷跳转按钮,连接到小黑盒和SteamDB,帮助用户快速获取更多游戏相关信息和数据分析
// ==UserScript== // @name Steam增强器 // @namespace http://tampermonkey.net/ // @version 1.5.1 // @description 该脚本能够放大Steam平台的大部分界面元素,提升阅读和操作体验;在CSGO社区市场详情页显示Buff平台的价格对比并提供跳转链接,方便用户快速查看和购买;同时在游戏详情页添加快捷跳转按钮,连接到小黑盒和SteamDB,帮助用户快速获取更多游戏相关信息和数据分析 // @author Mr.Wan // @homepageURL https://github.com/wanbage8/SteamPlus // @icon data:image/x-icon;base64,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FP+EURT/hFEU/4RRFP+EURT/hFEU4IJPFDKDUBQAd0QTBntHEp96RxD/gE4a/513Tv/p4df/9PDq//z7+v//////3M6+/7OWd/+6n4L/ekYQ/31KFP99ShT/fUoU/31KFP99ShT/fUoU/31KFP99ShT/fUoU/3xJFJ94RBQGc0AUO4JUKummhGX/1cW2//by7///////////////////////8Orl/6mJbP/Wx7n/iFw0/3M/Ef91QRT/dUIU/3VCFP91QhT/dUIU/3VCFP91QhT/dUIU/3VCFOl0QBQ81ca5jOTa0v/8+/r////////////////////////////6+fj/w66f/7Wahv/+/v3/5NrT/5p2Wv9uOxT/bTkS/246E/9uOhP/bjoT/246E/9uOhP/bjoT/246E/9tOROK////zf///////////////////////v7//fz7/+/p5v+3n5D/sZaF//Dr5/////////////Xy7/+1nIz/ckIk/2QvD/9kLw//ZjIS/2YyE/9mMhP/ZjIT/2YyE/9mMhPJ////7f///////////fz8/+Xd2f+ym4//knBe/7CXiv/Rwrv//fz7///////////////////////9/fz/2czF/7OajP+Rblv/aDce/14qEP9fLBL/XywS/18sEv9fLBLt////+vbz8v/Qw7z/mHpr/2o+Kv9YJw//ViQM/1clDf9zSjb/49vX///////////////////////7+fn/6+Xj/+3o5v/59/b/zLy1/29EL/9YJg7/WSgQ/1knEP9ZJxD9sZyT+35aSv9aLBf/UCAK/1IhDP9TIw7/UyMO/1MjDv9RIAv/jm9h//f19P///////////+nk4f+ehHj/lHZp/5N1aP+mjYP/8u/t/8e3sP9aLRj/UiIN/1MjDv9TIw79TB4L7UocCf9MHgv/TR4M/00eDP9NHgz/TR4M/00eDP9MHgv/UCMQ/7Shmv//////+vn4/5l/df+7qaL/9/X0//Xz8f+wm5L/po+F//b08/9+XE7/ShsI/00eDP9NHgzuRxsKyUcbCv9HGwr/RxsK/0cbCv9HGwr/RxsK/0cbCv9HGwr/RhkI/102J//e1tP/5N3b/490af/49vb////////////x7ez/jXFm/+/s6v+chXv/RRgG/0cbCv9HGwrJRBoJikQa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uP+/pIL/vKB8/9bFsP/i1cP/onpF/4hUEv+JVhT/iVYU/4lWFP+JVhT/iVYU/4lWFP+JVhT/iVYU/4lWFP+JVhT/iVYU/4lWFP+JVhTBh1QUGodUFAAAAAAAgU0UAH1JFAKCTxSJg1AU/4NQFP+DUBP/h1Ub/9PBq//Uw6//tZZx/865oP/LtZv/o31Q/72igv/e0MD/jl8n/4NPE/+DUBT/g1AU/4NQFP+DUBT/g1AU/4NQFP+DUBT/g1AU/4NQFP+DUBT/g1AU/4NQFP+CTxSJfUoUAoFOFAB9SRQAfEkUOH1KFOl9ShP/e0gR/35LFf+kgFn/9fHs/+/p4v/7+ff////////////s5dz/mnJI/9jIuP+qiGT/e0gQ/31KFP99ShT/fUoU/31KFP99ShT/fUoU/31KFP99ShT/fUoU/31KFP99ShT/fUsU/31KFOl8SRQ4fUoUAG04DQN1QhGXdkIR/4BPIf+fe1f/zbqn//Lt6P////////////////////////////////+wkXX/v6aP/8Gpkv92QhH/d0QT/3hFFP94RRT/eEUU/3hFFP94RRT/eEUU/3hFFP94RRT/eEUU/3hFFP94RRT/eEUU/3dEFJdyPxQDeUggKohcN96ukXf/3tHG//r39v///////////////////////////////////////f38/6SDaP/DrZr/8+7q/6yOdP93RRv/cT0S/3I/FP9yPxT/cj8U/3I/FP9yPxT/cj8U/3I/FP9yPxT/cj8U/3I/FP9yPxT/cj8U3nE+FCrl29Rw7ebh+/79/f////////////////////////////////////////////z7+//Nu6//jWVH/+jf2f//////+/n4/8m1pv+BVDL/azcQ/205E/9tORP/bTkT/205E/9tORP/bTkT/205E/9tORP/bTkT/205E/9tORP7bDkTbP///7L///////////////////////////////////////////39/P/ZzcX/o4Rx/5BqUv/Sw7n//////////////////////+PZ0/+WcVr/aDUU/2UxEP9mMhL/ZzMT/2czE/9nMxP/ZzMT/2czE/9nMxP/ZzMT/2czE/9nMxOs////2v///////////////////////////f39/+fg3P/HtKv/4dfS/9zQyf/Yy8P/8ezp//////////////////////////////////Xx8P+0m43/fVI7/3FCKf9jMBX/YCwQ/2IuE/9iLhP/Yi4T/2IuE/9iLhP/Yi4T/2IuE9n////w////////////////+PX0/9XIwv+fgXP/cUQv/14sE/9tQCn/hF9M/8Cso//+/v7///////////////////////////////////////39/f/08O7/5t7a/8Gto/+BWUX/XSoR/10qEf9dKhH/XSoR/10qEf9dKhH/XSoR8/////r+/v7/7Obk/72qof+FYVH/YDIc/1YkDP9XJQ7/WCcQ/1cmDv9VIwv/aDsm/9jMx//////////////////////////////////8+/v/7Ofl/+fg3f/29PL//////+/q5/+XeGr/WSgQ/1gnD/9YJxD/WCcQ/1gnEP9YJxD91svG+6KJfv9uRTP/VSUQ/1EgC/9TIw3/VCQO/1QkDv9UJA7/VCQO/1QkDv9RIQv/gV1O//Ht6///////////////////////5N3a/5d6bf96VUX/e1ZF/4FdTv+9q6P/+/r6//Lu7P+DYFD/UiEL/1QkDv9UJA7/VCQO/1QkDv1ZLRryTR4K/00eCv9PIAz/TyAM/08gDP9PIAz/TyAM/08gDP9PIAz/TyAM/08gDP9PIA3/pY6E//39/f///////////+nk4f99W0z/m4B0/9/W0v/p4+D/xrew/3dTRP+ynpb//////83Auv9XKhf/Th8M/08gDP9PIAz/TyAM80ocCthKHQv/Sh0L/0odC/9KHQv/Sh0L/0odC/9KHQv/Sh0L/0odC/9KHQv/Sh0L/0kbCf9XLRz/zcC7////////////pY6F/4xvZP/5+Pf/////////////////08jD/3JPQf/n4d//9PHw/29LPP9IGgj/Sh0L/0odC/9KHQvZRxsKrEcbCv9HGwr/RxsK/0cbCv9HGwr/RxsK/0cbCv9HGwr/RxsK/0cbCv9HGwr/RxsK/0QYBv9xT0H/7uvp//v7+v9/YFT/wbKs///////////////////////59/f/fl9S/8a5s///////g2VZ/0QXBv9HGwr/RxsK/0cbCqxFGglsRBoJ+0QaCf9EGgn/RBoJ/0QaCf9EGgn/RBoJ/0QaCf9EGgn/RBoJ/0Qa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FP+GUxT/hlMU/4ZTFP+GUxT/iFYY/8Wtjv/6+Pb/zrmh/5luOf+SZCv/lmoy/49gJf+SZCv/wKWF//j18f/ZybX/j18l/4ZSE/+GUxT/hlMU/4ZTFP+GUxT/hlMU/4ZTFP+GUxT/hlMU/4ZTFP+GUxT/hlMU/4ZTFP+GUxT/hlMU/4ZTFP+GUxT/hlMU/4ZTFP+GUxT/hlMUvYVRFBaFUhQAAAAAAAAAAAAAAAAAgE0UAHM/FAGCTxR8gk8U/YJPFP+CTxT/gk8U/4JPFP+BTRH/pH9T//f08P/Rvqn/o35S/8avk//p4NT/8uzl/+Xazf+1lnL/hlUb/7eZeP/6+Pb/up5+/4FOEv+CTxT/gk8U/4JPFP+CTxT/gk8U/4JPFP+CTxT/gk8U/4JPFP+CTxT/gk8U/4JPFP+CTxT/gk8U/4JPFP+CTxT/gk8U/4JPFP+CTxT/gk8U/YJPFHxwPBQAgE0UAAAAAAAAAAAAfksUAH5KFC9+SxThfksU/35LFP9+SxT/fksU/31JEf9/TBX/z7yn//79/f/m3NH/9fHs///////////////////////7+vj/t5t7/4RTHv/bzb7/5t3S/4hZJv9+SxP/fksU/35LFP9+SxT/fksU/35LFP9+SxT/fksU/35LFP9+SxT/fksU/35LFP9+SxT/fksU/35LFP9+SxT/fksU/35LFP9+SxT/fksU/35LFOF+SxQvfksUAAAAAAB5RhQAdUMUAnpHFJB7SBT/e0gU/3pHE/95RRH/fUoY/5NpPv++pYr/9fDs////////////////////////////////////////////6uLa/4haK/+ylHb/9/Tx/5dvRv95RRH/e0gU/3tIFP97SBT/e0gU/3tIFP97SBT/e0gU/3tIFP97SBT/e0gU/3tIFP97SBT/e0gU/3tIFP97SBT/e0gU/3tIFP97SBT/e0gU/3tIFP96RxSQdkIUAnlGFAB2QxQAdkMUKXdDFOB2QhL/dUER/4BQI/+gfFr/zrup//Lt6P///v7/////////////////////////////////////////////////+Pbz/5RsRv+eelj/+vj2/6WEZP90QA//d0MU/3dEFP93RBT/d0QU/3dEFP93RBT/d0QU/3dEFP93RBT/d0QU/3dEFP93RBT/d0QU/3dEFP93RBT/d0QU/3dEFP93RBT/d0QU/3dEFP93RBThdkMUKXZDFAB7RRYAbzoOc3RAFf+HWzX/sZR7/9/TyP/6+Pb/////////////////////////////////////////////////////////////////9O/s/4pgO/+jgWT//v7+/+fe1v+ffF3/dEIW/3I+Ev9zQBT/c0AU/3NAFP9zQBT/c0AU/3NAFP9zQBT/c0AU/3NAFP9zQBT/c0AU/3NAFP9zQBT/c0AU/3NAFP9zQBT/c0AU/3NAFP9zQBT/cz8Uc3RBFACgfmMOn3xgvMOtm//t5uH//v39////////////////////////////////////////////////////////////////////////////0cC0/3VEHf/CrZv////////////28/D/u6OP/3tMJv9uOhD/bzwT/3A8E/9vPBP/bzwT/288E/9vPBP/bzwT/288E/9vPBP/bzwT/288E/9vPBP/bzwT/288E/9vPBP/bzwT/288E/9wPBP/bzwTu247Ew759vU++vj26/////////////////////////////////////////////////////////////////////////////////39/f/bz8f/g1g5/4phQ//v6uX//////////////////v39/9jKv/+MZEb/azcS/2s3Ev9sOBP/bDgT/2w4E/9sOBP/bDgT/2w4E/9sOBP/bDgT/2w4E/9sOBP/bDgT/2w4E/9sOBP/bDgT/2w4E/9sOBP/bDgT6Ws4Ezf///94/////f/////////////////////////////////////////////////////////////////////28vH/1ce//6KCb/91Rif/hVtA/93Ryv/////////////////////////////////u6OT/p4l1/248HP9nMhH/aDQT/2g0E/9oNBP/aDQT/2g0E/9oNBP/aDQT/2g0E/9oNBP/aDQT/2g0E/9oNBP/aDQT/2g0E/9oNBP/aDQT/Gg0E2////+p//////////////////////////////////////////////////////////////7///////r5+P/DrqP/kWxW/5BqVP+2nY//7OXh////////////////////////////////////////////+vn4/8azqP96TTT/Yi0Q/2IuEP9jLxH/ZDAT/2QwE/9kMBP/ZDAT/2QwE/9kMBP/ZDAT/2QwE/9kMBP/ZDAT/2QwE/9kMBP/ZDAT/2QwE6P////M////////////////////////////////////////////////+vn4/93SzP+skoT/uqSY/+rj4P/39PL/9/Tz//v6+v/////////////////////////////////////////////////////////////////i2NP/l3Vk/3xRO/9yRCz/ZTIY/18qD/9gLBH/YS0T/2EtE/9hLRP/YS0T/2EtE/9hLRP/YS0T/2EtE/9hLRP/YS0T/2EtE8v////k//////////////////////////////////////Ht6//It67/kW9e/2o7I/9cKQ//XywT/3NHMv+Nalj/oYR1/+fg3P//////////////////////////////////////////////////////////////////////+vj3//Lu7P/o4d3/zb21/5x9bf9rPCT/XCkP/10rEf9eKxL/XisS/14rEv9eKxL/XisS/14rEv9eKxL/XisS/14rEuf////y//////////////////////z7+//i2dX/r5eL/3tTP/9eLRb/WCYN/1ooD/9bKRD/WigQ/1knD/9YJQ3/VyQM/5Z2Z//49vX///////////////////////////////////////////////////////////////////////////////////////z7+//YzMb/hWBO/1ooEP9aKBD/WykR/1spEf9bKRH/WykR/1spEf9bKRH/WykR/1spEPf////4///////////08fD/zb+4/5V2aP9oPCj/ViUO/1UkDf9XJg//VyYP/1cmD/9XJg//VyYP/1cmD/9XJg//VyYP/1wsFf+8qJ////////////////////////////////////////////////////////39/f/x7ev/5d3a/+fg3f/18vH///7+////////////7unm/5BvX/9XJQ7/VyYP/1cmD/9XJg//VyYP/1cmD/9XJg//VyYP/1cmD/79/Pz55+Dd/7Sflv98V0f/WywX/1IhC/9TIw3/VCQO/1QkDv9UJA7/VCQO/1QkDv9UJA7/VCQO/1QkDv9UJA7/VCQO/1MiDP9rQS7/3tXR////////////////////////////////////////////4trW/56Dd/9xSDb/Yzcj/2Q4Jf94UkH/rpeN/+7p5////////////+zm5P99WEf/UiIM/1QkDv9UJA7/VCQO/1QkDv9UJA7/VCQO/1QkDv6Tdmr1aD8t/1EiDf9PHwr/USEN/1EiDf9RIg3/USIN/1EiDf9RIg3/USIN/1EiDf9RIg3/USIN/1EiDf9RIg3/USIN/1EiDf9PHwr/iGha//Xy8f/////////////////////////////////Mvrj/aUAv/10xHv+La13/qpKI/6aNg/+BXk7/WCsX/3xYSf/i2tb////////////Owbv/Wy8b/1EhDP9RIg3/USIN/1EiDf9RIg3/USIN/1EiDfdLHAjnTR4K/04fDP9OHwz/Th8M/04fDP9OHwz/Th8M/04fDP9OHwz/Th8M/04fDP9OHwz/Th8M/04fDP9OHwz/Th8M/04fDP9OHwz/UCIP/6+bkv///////////////////////////93U0P9lPCv/b0k6/9PIw//8+/v////////////49/b/wLCp/181I/99Wkz/8O3r///////6+Pj/h2da/0wcCf9OHwz/Th8M/04fDP9OHwz/Th8M/04gDOhLHQvLSx0L/0sdC/9LHQv/Sx0L/0sdC/9LHQv/Sx0L/0sdC/9LHQv/Sx0L/0sdC/9LHQv/Sx0L/0sdC/9LHQv/Sx0L/0sdC/9LHQv/ShwJ/100JP/Vy8f//////////////////fz8/49zaP9bMSD/1szH/////////////////////////////////7uqo/9SJhT/tKGZ////////////uaeg/0wfDf9LHQv/Sx0L/0sdC/9LHQv/Sx0L/0sdC8xIGwqjSBsK/0gbCv9IGwr/SBsK/0gbCv9IGwr/SBsK/0gbCv9IGwr/SBsK/0gbCv9IGwr/SBsK/0gbCv9IGwr/SBsK/0gbCv9IGwr/SBsK/0YYB/96WU3/8O3s////////////6OPh/142J/+Rdmv//v39//////////////////////////////////Tx8P9xTkD/e1pO//n4+P//////2M/L/1MpGf9IGgn/SBsK/0gbCv9IGwr/SBsK/0gbCqNGGwpuRhsJ+0YbCf9GGwn/RhsJ/0YbCf9GGwn/RhsJ/0YbCf9GGwn/RhsJ/0YbCf9GGwn/RhsJ/0YbCf9GGwn/RhsJ/0YbCf9GGwn/RhsJ/0YbCf9HHAr/ppGI////////////1cvI/1AnFv+1pJ3///////////////////////////////////////////+Rd23/Yj0v/+/r6v//////5d/d/1o0JP9FGQj/RhsJ/0YbCf9GGwn/RhsJ/EYbCm9FGgk3RRoJ6EUaCf9FGgn/RRoJ/0UaCf9FGgn/RRoJ/0UaCf9FGgn/RRoJ/0UaCf9FGgn/RRoJ/0UaCf9FGgn/RRoJ/0UaCf9FGgn/RRoJ/0UaCf9CFgX/dVZJ//n39///////1cvH/04mFv+2pZ7///////////////////////////////////////////+ReG7/YT0u/+/r6f//////5d/d/1kzJP9EGQf/RRoJ/0UaCf9FGgn/RRoJ6UUaCTdEGgkOQxoIu0MaCP9DGgj/QxoI/0MaCP9DGgj/QxoI/0MaCP9DGgj/QxoI/0MaCP9DGgj/QxoI/0MaCP9DGgj/QxoI/0MaCP9DGgj/QxoI/0MaCP9BFwb/ZkU2//Ht7P//////5+Lg/1k0Jf+QeG3//v7+//////////////////////////////////Xy8f9vT0H/dlhL//n49///////2M/L/08oGP9CGQf/QxoI/0MaCP9DGgj/QxoIu0QaCQ5BGggAQhoIckIaCP9CGgj/QhoI/0IaCP9CGgj/QhoI/0IaCP9CGgj/QhoI/0IaCP9CGgj/QhoI/0IaCP9CGgj/QhoI/0IaCP9CGgj/QhoI/0IaCP9BGQf/UCsa/9nRzf///////Pz7/4hvZP9UMCD/18/L/////////////////////////////////7utp/9JIxL/rp2W////////////tqeg/0MbCf9BGgj/QhoI/0IaCP9CGgj/QhoIc0EaCABAGQcAQBkHKEAZB+BAGQf/QBkH/0AZB/9AGQf/QBkH/0AZB/9AGQf/QBkH/0AZB/9AGQf/QBkH/0AZB/9AGQf/QBkH/0AZB/9AGQf/QBkH/0AZB/9AGQf/PxgG/6SSif///////////9nRzv9XNSX/aEk7/9XMyP/9/Pz////////////6+fj/wbSu/1QyIv9xVEb/7uvp///////6+fj/f2VY/z0WBP9AGQf/QBkH/0AZB/9AGQfgQBkHKUAZBwA/GQcAQRkHAj4ZB5A+GQf/PhkH/z4ZB/8+GQf/PhkH/z4ZB/8+GQf/PhkH/z4ZB/8+GQf/PhkH/z4ZB/8+GQf/PhkH/z4ZB/8+GQf/PhkH/z4ZB/8+GQf/PBcE/19AMf/m4d/////////////FubT/Vzcn/04sHP+EbWH/p5aO/6ORiP94X1L/SCQT/2xPQf/d1tP////////////KwLv/SicW/z0YBv8+GQf/PhkH/z4ZB/8+GQeQQRkHAj8ZBwAAAAAAPRkGAD0ZBi89GQbhPRkG/z0ZBv89GQb/PRkG/z0ZBv89GQb/PRkG/z0ZBv89GQb/PRkG/z0ZBv89GQb/PRkG/z0ZBv89GQb/PRkG/z0ZBv89GQb/PRkG/zwYBf+NeG3/+Pf2////////////3NXS/455bv9bPS3/TCsa/04tHP9jRjf/oI6F/+rm5P///////////+rn5f9tUkP/OxYD/z0ZBv89GQb/PRkG/z0ZBuE9GQYvPRkGAAAAAAAAAAAAPBkGAEEdCAA7GQZ8OxgG/TsYBv87GAb/OxgG/zsYBv87GAb/OxgG/zsYBv87GAb/OxgG/zsYBv87GAb/OxgG/zsYBv87GAb/OxgG/zsYBv87GAb/OxgG/zsYBf9AHgz/noyD//j29v////////////38/P/t6uj/39nW/+Hb2P/y8O7//v7+////////////7Onn/39oXP87GAX/OxgG/zsYBv87GAb/OxgG/TsYBn1AHQgBPBkGAAAAAAAAAAAAAAAAADoYBQA6GAUXOhgFvjoYBf86GAX/OhgF/zoYBf86GAX/OhgF/zoYBf86GAX/OhgF/zoYBf86GAX/OhgF/zoYBf86GAX/OhgF/zoYBf86GAX/OhgF/zoYBf85FwT/Ph0L/4dzaP/i3tv//v7+//////////////////////////////////z8/P/Sysb/b1dJ/zkYBf85GAX/OhgF/zoYBf86GAX/OhgFvjoYBRc6GAUAAAAAAAAAAAAAAAAAAAAAADkYBQA4GAYAORgFOzgYBuE4GAb/OBgG/zgYBv84GAb/OBgG/zgY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 // @license GPL-3.0 License // @match *://store.steampowered.com/* // @match *://steamcommunity.com/* // @grant GM_addStyle // @grant GM_xmlhttpRequest // @connect steamcommunity.com // @connect buff.163.com // @connect api.steampowered.com // @connect steamcharts.com // @connect xiaoheihe.cn // ==/UserScript== (function () { GM_addStyle(` * { transition: var(--transition) var(--time)!important; border-radius: var(--borderR) !important; } :root{ --mainWidth:64vw; --mainMinWidth:940px; --transition:.3s; --borderR:5px; --time:ease-in-out; --csgoColor:#FFD700; } #Reviews_summary > div > div.leftcol {width:75%;} .rightcol.recent_reviews {width:calc(25% - 14px);} .review_box > div > .rightcol {width:calc(100% - 226px);} #highlight_strip_scroll, .forum_topic_tooltip {transition:0s !important;} .slider_ctn .handle, p {font-size: 15px;} .but { background-color: rgba(103, 193, 245, 0.2); box-shadow: none; margin-right: 2px; border-radius: 2px; cursor: pointer; margin-bottom: 3px; max-width: 200px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: fit-content; height: 30px; display: flex; align-items: center; justify-content: center; } .wan-box { position: fixed; top: 25%; left: 25%; z-index: 999; width: 350px; padding: 10px; background-color: #ffffff8a; backdrop-filter: blur(5px); display: none; color: #000; cursor: move; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; border: 1px solid #eee; } .switch-container { margin-top: 20px; } .flex { display: flex; align-items: center; justify-content: space-between; margin-bottom: 5px; } .switch { position: relative; display: inline-block; width: 53px; height: 25px; margin-left: 10px; } .switch input { opacity: 0; width: 0; height: 0; } .sliderBut { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 34px; } .sliderBut:before { position: absolute; content: ""; height: 20px; width: 20px; left: 4px; top: 50%; transform: translateY(-50%); background-color: #fff; transition: .4s; border-radius: 50%; } input:checked + .sliderBut { background-color: #2196F3; } input:focus + .sliderBut { box-shadow: 0 0 1px #2196F3; } input:checked + .sliderBut:before { transform: translate(26px, -50%); } .output { margin-top: 20px; font-size: 18px; } .wan-box-footer { display: flex; align-items: center; justify-content: space-around; margin-top: 10px; } .button { background-color: #2196F3; border: none; color: white; padding: 5px 10px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; margin: 4px 2px; cursor: pointer; border-radius: 5px; transition: background-color 0.3s ease; } .button:hover { background-color: #007BFF; } .button:active { background-color: #0056b3; transform: scale(0.98); } .title { font-size: 14px; font-weight: bold; } .radio-mar { margin-left: 10px; } [type="range"] { margin-left: 10px; } .community_home_header { max-width: initial; width: var(--mainWidth); } .community_home_tabs { max-width: initial; width: var(--mainWidth); } #AppHubContent { max-width: initial; width:var(--mainWidth); } #modalContent { width:var(--mainWidth)!important; } .workshopItemControlsCtn.fixed_in_scroll#ScrollingItemControls { width: var(--mainWidth); margin:0 auto; } .apphub_HomeHeader, div#store_header:not([aria-label="商店菜单"]) .content { width: var(--mainWidth); max-width: initial; } .Broadcast_Card.apphub_Card, .Broadcast_Card .apphub_CardContentPreviewImage { max-width:initial; max-height:initial; } ._2nl8HoZ_rxg3AGpYs0N_UD.Panel.Focusable, .workshop_home_content{ width: var(--mainWidth); max-width: initial; } .pagecontent #BG_bottom.maincontent { width: var(--mainWidth)!important; } #tabs_basebg #leftContents { width:80%; max-width:initial; } #rightContents, #rightContents.sidebar.right_column { width:calc(20% - 10px); max-width:initial; } .responsive_tab_baseline, #mainContents, #tabs_basebg, #highlight_player_area, .highlight_overflow, .highlight_ctn, #search_result_container, div#store_header .content, .slideshow_content, .review_page_content{ max-width: initial; } .view_inventory_page .inventory_ctn, .view_inventory_page .inventory_ctn .inventory_page, .gameLogoHolder_default img{ width:100% } .trade_item_box { background-color: initial; } #BG_top_workshop { width: var(--mainWidth); background-size:100%; background-position: top; } .home_leftcol.home_tab_col { width:80%; } .flex_cols > .home_leftcol { width: 618px; } .home_rightcol { width:19%; } #search_resultsRows a.search_result_row { display: flex; } #search_resultsRows a.search_result_row .responsive_search_name_combined { width: calc(85% - 125px); display: flex; align-items: center; justify-content: space-between; } .search_result_row .col.search_released { width: 106px; flex-shrink: 0; } .left_column, #leftContents{ width: 80%; } .right_column { width:calc(20% - 10px); } .profile_subpage_column .maincontent, body.migrated_profile_page .profile_subpage_column #BG_bottom.maincontent { background: rgb(18, 27, 37); } .profile_subpage_column .profile_small_header_bg { background-image:initial; } .profile_flag, .progress-bar{ border-radius: 0px !important; } .browse_content .recommendation .recommendation_link { width: 100%; } .wear .wear-pointer .wear-pointer-icon { margin-left: -6px; position: absolute; width: 0; height: 0; border-style: solid; border-width: 6px 6px 0 6px; border-color: #515151 transparent transparent transparent; } .wear-pointer { width: 180px; position: relative; padding-bottom: 4px; margin-top: 3px; } .progress { overflow: hidden; height: 5px; width: 180px; } .progress { height: 5px; overflow: hidden; background-color: #f5f5f5; border-radius: 4px; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-sizing: border-box; } .wear-pointer-icon { margin-left: -6px; position: absolute; width: 0; height: 0; border-style: solid; border-width: 6px 6px 0 6px; border-color: #515151 transparent transparent transparent; } .progress-bar { float: left; width: 0; height: 100%; font-size: 12px; line-height: 20px; color: #fff; text-align: center; background-color: #337ab7; -webkit-transition: width .6s ease; -o-transition: width .6s ease; transition: width .6s ease; } .progress-bar-fn { background-color: green; } .progress-bar-success { background-color: #5cb85c; } .progress-bar-warning { background-color: #f0ad4e; } .progress-bar-danger { background-color: #d9534f; } .progress-bar-bs { background-color: #993A38; } .sticker { position: relative; } .sticker-2 { background: #474747; padding: 10px; position: absolute; top: -50%; transform: translateY(60%); left: 76%; opacity: 0; cursor: pointer; } .sticker-2::before { content: ''; border:10px solid transparent; border-right-color: #474747; position: absolute; top: 50%; transform: translateY(-50%); left: -20px; } .sticker:hover img { width: 75px; height: 75px; } .sticker:hover .sticker-2 { opacity: 1; } .BUFF-active { animation: borderColor 1s linear infinite; border: var(--csgoColor) 2px solid; } @keyframes borderColor { 0%{ border-color: var(--csgoColor); } 50%{ border-color: transparent; } 100%{ border-color: var(--csgoColor); } } #BUFF-up { width: 35px; height: 35px; border-radius: 50%; border: 1px solid var(--csgoColor); display: flex; align-items: center; justify-content: center; position: fixed; right: -50px; top: -50%; transform: translateY(-50%); opacity: 0; } #steam-date { position: absolute; transform: translateY(-100%); display: flex; align-items: center; user-select: none; } #menu{ position: absolute; height: 0; overflow-y: scroll; top: 100%; background-color: #ffffff8a; backdrop-filter: blur(4px); padding: 0; color: #343434; line-height: 25px; cursor: pointer; z-index: 999; } #menu div{ white-space: nowrap; } #menu div:hover{ color:#101010 } #menu-option{ border: #575757 1px solid; padding: 3px; cursor: pointer; background-color: #e5e5e5c7; } #menu-option:hover #menu{ height: 295px; padding: 5px; } `) /*======修改页面宽度======*/ /* * 规则集: * 可自定义添加 * 类名:{ * css属性:值 * } * */ let combinedRules = { "div.leftcol": { "width": "70%" }, "div.rightcol": { "width": "calc(30% - 14px)%" }, "img.game_header_image_full": { "width": "100%" }, ".queue_ctn": { "width": "var(--mainWidth)" }, ".game_area_play_stats": { "width": "var(--mainWidth)", "max-width": "initial" }, ".leftcol.game_description_column": { "width": "70%" }, ".rightcol.game_meta_data": { "width": "calc(30% - 14px)" }, "#review_create": { "width": "100%", "max-width": "initial" }, ".notice_box_content": { "width": "calc(100% - 29px)" }, "#game_recommendation": { "width": "calc(100% - 27px)", "max-width": "calc(100% - 27px)", "transition": "initial !important" }, ".review_controls": { "width": "calc(100% - 19px)", "max-width": "calc(100% - 19px)" }, ".game_language_options": { "width": "100%" }, "body.v6 .page_content": { "width": "var(--mainWidth)" }, ".game_page_background.game .responsive_store_nav_ctn_spacer #store_header .content": { "width": "var(--mainWidth)" }, ".apphub_HomeHeaderContent": { "max-width": "initial" }, "#responsive_page_template_content .apphub_HomeHeaderContent": { "width": "var(--mainWidth)", "max-width": "initial" }, ".glance_tags.popular_tags": { "display": "flex", "flex-wrap": "wrap", "height": "fit-content" }, ".similar_recent_apps_container": { "height": "fit-content", "flex-wrap": "wrap" }, "#gameHeaderImageCtn img": { "height": "auto", "width": "100%" }, ".rightcol.small.responsive_local_menu.autocollapse_enabled#additional_search_options": { "width": "calc(30% - 14px)", }, "search_result_container": { "max-width": "initial" }, ".page_content_ctn.friend_activity .page_content .rightcol": { "width": "calc(30% - 14px)", }, "#ig_bottom.nobg.mediaBody": { "width": "var(--mainWidth)", "max-width": "initial" }, "#responsive_page_template_content .breadcrumbs": { "width": "var(--mainWidth)", "max-width": "initial" }, "#ItemControls": { "width": "initial", "max-width": "initial" }, "#profileBlock.clearfix": { "width": "80%", "max-width": "initial" }, ".subSection.detailBox": { "background-position": "top", "background-size": "100%", }, ".responsive_local_menu#rightContents": { "width": "calc(20% - 10px)", }, ".responsive_local_menu#rightContents .sidebar": { "width": "100%", }, "#blotter_page": { "width": "var(--mainWidth)", }, "#blotter_content": { "width": "80%", }, "#friendactivity_right_column": { "width": "20%", }, ".profile_small_header_bg": { "width": "var(--mainWidth)", "max-width": "initial" }, ".profile_small_header_texture": { "max-width": "initial" }, ".maincontent": { "width": "var(--mainWidth)", }, "#active_inventory_page.view_inventory_page": { "width": "initial", }, ".view_inventory_page .inventory_page_left": { "width": "calc(100% - 360px)", }, ".view_inventory_page #inventories": { "width": "calc(100% - 6px)" }, ".apphub_HomeHeader": { "max-width": "initial" }, "html.responsive #ig_bottom": { "width": "var(--mainWidth)", "max-width": "initial" }, "#ig_bottom.smallheader": { "width": "var(--mainWidth)", "max-width": "initial" }, ".joinGroup": { "width": "initial", }, ".workshop_header": { "width": "var(--mainWidth)", "margin": "0 auto", }, ".apphub_ContentGuides": { "max-width": "initial", "width": "80%" }, "#game_highlights .rightcol": { "width": "30%", }, "#game_area_description": { "width": "initial", }, ".apphub_HomeHeaderContent .apphub_AppIcon": { "display": "block", "float": "left", "margin-right": "5px", }, "#AppHubContent .maincontent .rightcol.responsive_local_menu": { "width": "calc(30% - 18px)", }, "#AppHubContent .rightcol.responsive_local_menu": { "width": "calc(30% - 18px)", }, ".discussionSearchTextContainer": { "background-size": "100% 100%", "width": "100%", }, ".discussionSearchText.searchText": { "width": "calc(100% - 80px)", "left": "17px", }, ".discussionSearchTextSubmitImg": { "left": "90%", }, ".forum_op": { "max-width": "initial", "background-size": "100%" }, ".creator_announcement_browse_adjustment .browse_container": { "transform": "initial", "width": "100%", }, "body.v6.curator .page_content.browse_reviews": { "transform": "translateX(-160px)", }, ".saleEventBannerBig": { "width": "100%", }, ".saleEventBannerMobile": { "width": "100%", }, ".game_area_description": { "width": "100%", }, ".game_area_description img.bb_img": { "width": "100%", }, "#review_histogram_rollup_section": { "width": "70%", }, "#review_histogram_recent_section": { "width": "30%", } }; function applyStyles(rules) { for (let selector in rules) { const elements = document.querySelectorAll(selector); if (!elements || elements.length === 0) continue; elements.forEach(element => { let properties = rules[selector]; for (let property in properties) { let value = properties[property]; if (value === undefined || value === null) continue; element.style[property] = value; } }); } } applyStyles(combinedRules); //======自定义页面======// document.body.insertAdjacentHTML("beforeend", `<div class="wan-box" style="transition: 0s !important;"><h2 style="text-align: center;font-size: 26px;color: #000">Steam大屏Plus</h2><label for="range">页面宽度<input type="range" min="10" max="100" value="64" id="range"><span id="rangeNum">64</span><span id="unit">%视口宽度</span></label><div class="switch-container"><div class="flex"><span>是否启用全局圆角</span><label class="switch"><input type="checkbox" id="radius" checked><span class="sliderBut"></span></label></div><label for="radiusInp" title="设置圆角大小单位像素">圆角大小<input type="range" min="0" max="25" value="5" id="radiusInp"><span id="radiusNum">5</span>px</label></div><div class="switch-container"><div class="flex"><span>是否启用全局过渡</span><label class="switch"><input type="checkbox" id="transition" checked><span class="sliderBut"></span></label></div><label for="transitionInp" title="设置过渡时长单位秒(过渡时间过长可能导致某些元素响应慢)">过渡时长<input type="range" min="0" max="5" step="0.1" value="0.3" id="transitionInp"><span id="transitionNum">0.3</span>s<div>过渡曲线<label for="ease-in-out" class="radio-mar">快=>慢=>快<input type="radio" name="time" data-name="ease-in-out" id="ease-in-out" checked></label><label for="ease-out" class="radio-mar">慢=>快<input type="radio" name="time" data-name="ease-out" id="ease-out"></label><label for="linear" class="radio-mar">匀速<input type="radio" name="time" data-name="linear" id="linear"></label></div></label></div><div class="wan-box-footer"><button class="button" id="ok">确定</button><button class="button" id="no">取消</button><button class="button" id="reset" title="重置为Steam默认宽度">重置</button></div></div>`); let ranges = document.querySelectorAll("input[type='range']"); let range = document.querySelector("#range"); let radiusInp = document.querySelector("#radiusInp"); let radius = document.querySelector("#radius"); let transitionInp = document.querySelector("#transitionInp"); let transition = document.querySelector("#transition"); let ok = document.querySelector("#ok"); let no = document.querySelector("#no"); let wanBox = document.querySelector(".wan-box"); let reset = document.querySelector("#reset"); let data = JSON.parse(localStorage.getItem("state")); let unit = document.querySelector("#unit"); let timeOut = document.querySelectorAll("#transitionNum~div>label>input"); let steamURL = location.href let num = 0; let timeStatus = "ease-in-out" let state; let sw = { radius: 1, transition: 1 }; if (data) { state = data range.value = data.range; document.getElementById("rangeNum").innerText = data.range; radiusInp.value = data.radius; document.getElementById("radiusNum").innerText = data.radius; transitionInp.value = data.transition; document.getElementById("transitionNum").innerText = data.transition; document.documentElement.style.setProperty("--mainWidth", data.range + (data.range <= 100 ? "vw" : "px")); document.documentElement.style.setProperty("--transition", data.transition + "s"); document.documentElement.style.setProperty("--borderR", data.radius + "px"); document.documentElement.style.setProperty("--time", data.time); unit.innerText = state.range <= 100 ? "%视口宽度" : "px" } for (let i = 0; i < ranges.length; i++) { ranges[i].addEventListener("input", function () { this.nextElementSibling.innerHTML = this.value; }) } function toggleElement(ele) { if (ele.checked) { ele.parentElement.parentElement.nextElementSibling.style.display = "block"; sw[ele.id] = 1 } else { ele.parentElement.parentElement.nextElementSibling.style.display = "none"; sw[ele.id] = 0 } } radius.addEventListener("change", function () { toggleElement(this) }) transition.addEventListener("change", function () { toggleElement(this); }) ok.addEventListener("click", function () { state = { range: range.value, radius: sw.radius ? radiusInp.value : "0", transition: sw.transition ? transitionInp.value : "0", time: timeStatus, } localStorage.setItem("state", JSON.stringify(state)); wanBox.style.display = "none"; document.documentElement.style.setProperty("--mainWidth", state.range + "vw"); document.documentElement.style.setProperty("--transition", state.transition + "s"); document.documentElement.style.setProperty("--borderR", state.radius + "px"); document.documentElement.style.setProperty("--time", state.time); num++ }) no.addEventListener("click", function () { wanBox.style.display = "none"; num++ }) reset.addEventListener("click", function () { state.range = "940" localStorage.setItem("state", JSON.stringify(state)); wanBox.style.display = "none"; document.documentElement.style.setProperty("--mainWidth", state.range + "px"); num++ }) document.addEventListener("keyup", function (e) { if (e.altKey && e.keyCode === 65 && e.ctrlKey) { if (num % 2 === 0) { wanBox.style.display = "block" } else { wanBox.style.display = "none" } num++ } unit.innerText = state?.range <= 100 ? "%视口宽度" : "px" }) let move = false; let offset = [0, 0]; wanBox.addEventListener('mousedown', function (e) { if (e.target !== this && !e.target.closest('input[type="range"]')) { move = true; offset = [ wanBox.offsetLeft - e.clientX, wanBox.offsetTop - e.clientY ]; } }); document.addEventListener('mousemove', function (e) { if (move) { e.preventDefault(); wanBox.style.left = (e.clientX + offset[0]) + 'px'; wanBox.style.top = (e.clientY + offset[1]) + 'px'; } }); document.addEventListener('mouseup', function () { move = false; }); for (let i = 0; i < timeOut.length; i++) { timeOut[i].addEventListener("change", function () { timeStatus = this.getAttribute("data-name"); }) } let cont = localStorage.getItem("t"); if (!cont) { ShowAlertDialog('注意', '按下“Ctrl+Alt+A”键即可呼出Steam大屏Plus菜单', "明白!"); localStorage.setItem("t", "t") } //=============================游戏详情页&csgo市场=======================// let appId = steamURL.match(/app\/(\d+)/); let community = /https:\/\/steamcommunity.com\/market\/listings\/730/.test(steamURL) let headerStandard = document.querySelector(".apphub_HeaderStandardTop") let communityName = document.getElementById("largeiteminfo_item_name") let main = document.getElementById("BG_bottom") let tableMain = document.querySelector(".market_commodity_order_block") || document.getElementById("largeiteminfo_warning") let csgoName = "" let csgoId /** * 传入csgo磨损度返回对应的词语 * @param {Float} num -武器磨损度 * @return {String<崭新出厂|略有磨损|久经沙场|破损不堪|战痕累累|"">} * */ function csgoAbrasion(num) { if (0 <= num && num < 0.07) return "崭新出厂"; else if (0.07 <= num && num < 0.15) return "略有磨损"; else if (0.15 <= num && num < 0.37) return "久经沙场"; else if (0.37 <= num && num < 0.44) return "破损不堪"; else if (0.44 <= num && num <= 1) return "战痕累累"; else return ""; } /** * 消息提示 * @param {NodeList} dom -显示消息的容器 * @param {String<Selection>} node -消息内容 * @param {String<JSON>} [options] -额外配置 * */ function showMsg(dom, node, options) { let container = document.querySelectorAll(dom) for (let i = 0; i < container.length; i++) { if (document.querySelectorAll(dom)[i].dataset.msg) { container[i].innerHTML = document.querySelectorAll(dom)[i].dataset.msg continue } container[i].innerHTML = node } } /** * 数字单位转换为万 * @param {Number} number -要转换的数字 * @param {Number} [decimals=2] -要省略的位数 * */ function numberPro(number, decimals = 2) { if (typeof number !== 'number' || isNaN(number)) { throw new Error('提供的号码无效'); } const tenThousand = 10000; if (number >= tenThousand) { const formattedNumber = (number / tenThousand).toFixed(decimals); // 如果没有小数部分,则去掉小数点和后面的0 return parseFloat(formattedNumber) % 1 === 0 ? parseInt(formattedNumber, 10) + '万' : formattedNumber + '万'; } else { return number.toString(); } } // 游戏详情页 if (appId && headerStandard) { // 跳转启发来自 https://www.xiaoheihe.cn/app/bbs/link/144510651 headerStandard.insertAdjacentHTML("afterbegin", `<div class="apphub_OtherSiteInfo" style="margin-left: 10px" title="跳转到小黑盒"><a class="btnv6_blue_hoverfade btn_medium" href="https://www.xiaoheihe.cn/app/topic/game/pc/${appId[1]}"><img style="width: 29px;height: 29px;" src="https://imgheybox.max-c.com/oa/2024/11/27/3912834da32296bd985281f8944e75fc.ico" alt="小黑盒"></a></div>`) headerStandard.insertAdjacentHTML("afterbegin", `<div class="apphub_OtherSiteInfo" style="margin-left: 10px" title="跳转到SteamDB"><a class="btnv6_blue_hoverfade btn_medium" href="https://steamdb.info/app/${appId[1]}"><img style="width: 29px;height: 29px;" src="https://steamdb.info/static/logos/vector_prefers_schema.svg" alt="SteamDB"></a></div>`) let userPlay = document.querySelector(".glance_ctn_responsive_left") userPlay.insertAdjacentHTML("afterbegin", `<div class="dev_row" style="margin-top: 10px"><div class="subtitle column">在线人数:</div><div class="summary column" id="user-num" style="color: #8f98a0">查询中...</div></div><div class="dev_row"><div class="subtitle column">今日峰值:</div><div class="summary column user-num-max" style="color: #8f98a0">查询中...</div></div><div class="dev_row"><div class="subtitle column">历史峰值:</div><div class="summary column user-num-max" style="color: #8f98a0">查询中...</div></div><div class="dev_row"><div class="subtitle column">平均游戏时间:</div><div class="summary column user-num-max-hey" style="color: #8f98a0">查询中...</div></div>`) let userPlayDom = document.querySelectorAll(".user-num-max") // 当前游戏在线人数 GM_xmlhttpRequest({ method: "GET", url: `https://api.steampowered.com/ISteamUserStats/GetNumberOfCurrentPlayers/v1/?appid=${appId[1]}`, onload: function (res) { let data = JSON.parse(res.response) let msg = document.getElementById("user-num") if (data.response.result !== 1) { showMsg("#user-num", "查询结果异常") return; } msg.innerText = numberPro(data.response.player_count) || "查询结果异常" }, onerror: function (error) { throw new Error(error) showMsg("#user-num", "查询结果错误") } }); GM_xmlhttpRequest({ method: "GET", url: `https://steamcharts.com/app/${appId[1]}`, onload: function (res) { let userPlayArr try { let data = res.responseText userPlayArr = data.match(/(?<="num">)(\d+)/g) userPlayDom[0].textContent = numberPro(+userPlayArr[1]) userPlayDom[1].textContent = numberPro(+userPlayArr[2]) } catch (e) { showMsg(".user-num-max", "查询失败") throw new Error(e) } }, onerror: function (error) { throw new Error(error) showMsg(".user-num-max", "查询失败") } }); GM_xmlhttpRequest({ method: "GET", url: `https://www.xiaoheihe.cn/app/topic/game/pc/${appId[1]}`, headers: { "content-type": "application/json", "Referer": "https://www.xiaoheihe.cn/", "origin": "https://www.xiaoheihe.cn" }, onload: function (res) { let heyMsg = document.querySelector(".user-num-max-hey") let heyBoxHtml = document.createRange().createContextualFragment(res.responseText); try { let data = JSON.parse(heyBoxHtml.getElementById("__NUXT_DATA__").innerText); for (let i = 0; i < data.length; i++) { if (data[i] === "平均游戏时间") { heyMsg.textContent = `${data[i + 1] + '' !== "[object Object]" ? data[i + 1] + " 数据来源:小黑盒" : "暂无"}` } } } catch (e) { showMsg(".user-num-max-hey", "查询失败") throw new Error(e) } }, onerror: function (error) { throw new Error(error) } }); // steam市场增强 } else if (community && communityName) { // 延时加载 等待元素加载完成 setTimeout(function () { main.insertAdjacentHTML("beforeend", `<h2 class="market_section_title">网易BUFF</h2><span id="BUFF-total"></span><div id="searchResultsRows" style=""><div class="market_listing_table_header"><div class="market_listing_price_listings_block"><span class="market_listing_right_cell market_listing_action_buttons">跳转到BUFF</span><span class="market_listing_right_cell market_listing_their_price" style="text-align: center">价格</span><span class="market_listing_right_cell market_listing_their_price" style="width: 220px;text-align: center">磨损度</span></div><div><span class="market_listing_header_namespacer"></span>名称</div></div><div id="BUFF-body"></div><div id="content_loading" class="page_content_ctn dark" style="display: block;"><div class="home_page_content more_content" id="BUFF-loading"><div class="LoadingWrapper"><div class="LoadingThrobber"><div class="Bar Bar1"></div><div class="Bar Bar2"></div><div class="Bar Bar3"></div></div><div class="BUFF-msg LoadingText">正在加载更多内容…</div></div></div></div></div><div id="BUFF-up">⬆️</div>`) tableMain.insertAdjacentHTML("afterbegin", `<div class="market_commodity_orders_table_container"><table class="market_commodity_orders_table"><tbody id="BUFF-table"><tr><th align="right">编号</th><th align="right">Steam价格</th><th align="right">Buff价格</th><th align="right">利润</th><th align="right">折扣率</th></tr><tr class="BUFF-msg" id="BUFF-tablet-msg"><th colspan="5">查询中...</th></tr></tbody></table></div>`) let BUFFcontent = document.getElementById("BUFF-body") let BUFFtitle = document.getElementById("BUFF-title") let BUFFtable = document.getElementById("BUFF-table") let BUFFloading = document.getElementById("BUFF-loading") let BUFFtotal = document.getElementById("BUFF-total") let steamPrice = document.querySelector(".market_listing_price.market_listing_price_with_fee:not(.price-Buff)") let appearance = document.getElementById("largeiteminfo_item_descriptors").firstElementChild.textContent.match(/崭新出厂|略有磨损|久经沙场|破损不堪|战痕累累/) let pageNum = 1 let initNum = 1 let sliderObserver csgoName = communityName.innerText if (appearance) csgoName += appearance[0] BUFFtable.addEventListener("click", (e) => { if (!e.target.dataset.index) return; let index = e.target.dataset.index let list = document.querySelectorAll("#BUFF-body .market_listing_row.market_recent_listing_row")[index] list.classList.add("BUFF-active") list.scrollIntoView({behavior: 'smooth', block: 'center'}); let time = setTimeout(() => { list.classList.remove("BUFF-active") }, 5500) }) document.documentElement.style.setProperty("--csgoColor", communityName.style.color) communityName.insertAdjacentHTML("beforebegin", `<a href="https://buff.163.com/market/csgo#game=csgo&page_num=1&search=${csgoName}" id="BUFF-URL"><img style="width: 40px;height: 40px;float: right;" title="跳转到BUFF" src="https://g.fp.ps.netease.com/market/file/59b156975e6027bce06e8f6ceTyFGdsj"></a>`) // 调用Buff查询接口查询商品ID GM_xmlhttpRequest({ method: "GET", url: `https://buff.163.com/api/market/goods?game=csgo&page_num=1&search=${csgoName}&use_suggestion=0&_=1738903063922`, headers: { "Referer": "https://buff.163.com/market/csgo", "Accept": "application/json, text/javascript, */*; q=0.01" }, onload: function (response) { let data = JSON.parse(response.response) console.log(data) if (data.code !== "OK") { showMsg(".BUFF-msg", `请求ID异常,异常信息:${data.error} 状态码:${data.code}`, data) return } else if (data.data.items.length === 0) { showMsg(".BUFF-msg", `未查询到该商品`) return; } // 创建观察器 sliderObserver = new IntersectionObserver((entries) => { let data = entries[0] if (!data.isIntersecting) return if (!csgoId) return getBUFFList() }) sliderObserver.observe(BUFFloading) if (data.data.items.length === 1 && data.data.items[0].id) { csgoId = data.data.items[0].id } else if (data.data.items.length > 1) { let dom = "" for (let i = 0; i < data.data.items.length; i++) { let index = data.data.items[i] if (communityName.innerText === data.data.items[i].short_name) { csgoId = data.data.items[i].id break; } else if (i === data.data.items.length - 1) { showMsg("#BUFF-tablet-msg", `<th colspan="5">价格异常</th>`) dom += `<div class="market_listing_row market_recent_listing_row"><div class="market_listing_item_img_container"><img src="${index?.img_src || index.goods_info.icon_url}" onerror="this.src=document.querySelector('.market_listing_largeimage img').src" style="border-color: var(--csgoColor);" class="market_listing_item_img economy_item_hoverable" alt=""></div><div class="market_listing_price_listings_block"><div class="market_listing_right_cell market_listing_action_buttons"><div class="market_listing_buy_button"><a href="https://buff.163.com/goods/${index.id}"class="item_market_action_button btn_green_white_innerfade btn_small"><span>跳转到BUFF</span></a></div></div><div class="market_listing_right_cell market_listing_their_price"><span class="market_table_value"><span class="market_listing_price market_listing_price_with_fee price-Buff ">¥ ${index.price || index.sell_reference_price}</span><br></span></div><div class="market_listing_right_cell" style="width: 220px;"><div class="market_listing_row_action" style="margin: 0">磨损度:${index.asset_info?.paintwear || "暂无"}<div class="wear-pointer"><div class="wear-pointer-icon" style="left: ${+index.asset_info?.paintwear * 100 || "0"}%"></div></div><div class="progress" style="margin-bottom: 5px;"><div class="progress-bar progress-bar-fn" style="width: 7%;" title="崭新出厂"></div><div class="progress-bar progress-bar-success" style="width: 8%;" title="略有磨损"></div><div class="progress-bar progress-bar-warning" style="width: 23%;" title="久经沙场"></div><div class="progress-bar progress-bar-danger" style="width: 7%;" title="破损不堪"></div><div class="progress-bar progress-bar-bs" style="width: 55%;" title="战痕累累"></div></div></div></div></div><div class="market_listing_item_name_block"><span class="market_listing_item_name economy_item_hoverable" style="color: var(--csgoColor);">${index.name}</span><br><div class="market_listing_row_details economy_item_hoverable"><br><div class="sticker_info sticker_infoBUFF" style="width:100px; margin:4px; padding:8px;">${index.sell_num}件在售</div></div></div></div>` BUFFcontent.insertAdjacentHTML("beforeend", dom) sliderObserver.unobserve(BUFFloading) BUFFloading.remove() return; } dom += `<div class="market_listing_row market_recent_listing_row"><div class="market_listing_item_img_container"><img src="${index?.img_src || index.goods_info.icon_url}" onerror="this.src=document.querySelector('.market_listing_largeimage img').src" style="border-color: var(--csgoColor);" class="market_listing_item_img economy_item_hoverable" alt=""></div><div class="market_listing_price_listings_block"><div class="market_listing_right_cell market_listing_action_buttons"><div class="market_listing_buy_button"><a href="https://buff.163.com/goods/${index.id}"class="item_market_action_button btn_green_white_innerfade btn_small"><span>跳转到BUFF</span></a></div></div><div class="market_listing_right_cell market_listing_their_price"><span class="market_table_value"><span class="market_listing_price market_listing_price_with_fee price-Buff ">¥ ${index.price || index.sell_reference_price}</span><br></span></div><div class="market_listing_right_cell" style="width: 220px;"><div class="market_listing_row_action" style="margin: 0">磨损度:${index.asset_info?.paintwear || "暂无"}<div class="wear-pointer"><div class="wear-pointer-icon" style="left: ${+index.asset_info?.paintwear * 100 || "0"}%"></div></div><div class="progress" style="margin-bottom: 5px;"><div class="progress-bar progress-bar-fn" style="width: 7%;" title="崭新出厂"></div><div class="progress-bar progress-bar-success" style="width: 8%;" title="略有磨损"></div><div class="progress-bar progress-bar-warning" style="width: 23%;" title="久经沙场"></div><div class="progress-bar progress-bar-danger" style="width: 7%;" title="破损不堪"></div><div class="progress-bar progress-bar-bs" style="width: 55%;" title="战痕累累"></div></div></div></div></div><div class="market_listing_item_name_block"><span class="market_listing_item_name economy_item_hoverable" style="color: var(--csgoColor);">${index.name}</span><br><div class="market_listing_row_details economy_item_hoverable"><br><div class="sticker_info sticker_infoBUFF" style="width:100px; margin:4px; padding:8px;">${index.sell_num}件在售</div></div></div></div>` } } steamPrice = steamPrice ? +steamPrice.innerText.replace(/[^\d.]/g, "") : +data.data?.goods_infos?.csgoId?.steam_price_cny || document.querySelectorAll(".market_commodity_orders_header_promote")[1]?.textContent.replace(/[^\d.]/g, "") || 0 // 拿到ID发送商品列表请求 getBUFFList() }, onerror(response) { throw new Error(response) showMsg(".BUFF-msg", `查询ID数据错误 请查看控制台`) } }); function getBUFFList() { GM_xmlhttpRequest({ method: "GET", url: `https://buff.163.com/api/market/goods/sell_order?game=csgo&goods_id=${csgoId}&page_num=${pageNum}&mode=&allow_tradable_cooldown=1`, headers: { "Referer": "https://buff.163.com/", "Accept": "application/json, text/javascript, */*; q=0.01" }, onload: function (response) { let data = JSON.parse(response.response) console.log(data) if (data.code !== "OK") { showMsg(".BUFF-msg", `请求列表异常,异常信息:${data.error} 状态码:${data.code}`, data) sliderObserver.unobserve(BUFFloading) return } else if (pageNum * 10 >= data.data.total_count) { showMsg(".LoadingText", `没有更多数据了`) sliderObserver.unobserve(BUFFloading) } else if (data.data.items.length === 0) { showMsg(".BUFF-msg", `未查询到该商品`) sliderObserver.unobserve(BUFFloading) return } document.getElementById("BUFF-tablet-msg").style.display = 'none' BUFFtotal.innerText = `总数:${data.data.total_count}` let sticker for (let i = 0; i < data.data.items.length; i++) { let index = data.data.items[i] BUFFcontent.insertAdjacentHTML("beforeend", `<div class="market_listing_row market_recent_listing_row"><div class="market_listing_item_img_container"><img src="${index.img_src}" style="border-color: var(--csgoColor); background: url('${data.data.src_url_background}');background-size: 100% 100%" class="market_listing_item_img economy_item_hoverable" alt=""></div><div class="market_listing_price_listings_block"><div class="market_listing_right_cell market_listing_action_buttons"><div class="market_listing_buy_button"><a data-appid="${index.asset_info?.appid}" data-assetid="${index.asset_info?.assetid}" data-sell_order_id="${index.id}" data-classid="${index.asset_info?.classid}" data-contextid="${index.asset_info?.contextid}" data-instanceid="${index.asset_info?.instanceid}" class="getBUFF item_market_action_button btn_green_white_innerfade btn_small"><span>跳转到BUFF</span></a></div></div><div class="market_listing_right_cell market_listing_their_price"><span class="market_table_value"><span class="market_listing_price market_listing_price_with_fee price-Buff">¥ ${index.price}</span><br></span></div><div class="market_listing_right_cell" style="width: 220px;"><div class="market_listing_row_action" style="margin: 0">磨损度:${index.asset_info?.paintwear || "暂无"}<div class="wear-pointer"><div class="wear-pointer-icon" style="left: ${+index.asset_info?.paintwear * 100 || "0"}%"></div></div><div class="progress" style="margin-bottom: 5px;"><div class="progress-bar progress-bar-fn" style="width: 7%;" title="崭新出厂"></div><div class="progress-bar progress-bar-success" style="width: 8%;" title="略有磨损"></div><div class="progress-bar progress-bar-warning" style="width: 23%;" title="久经沙场"></div><div class="progress-bar progress-bar-danger" style="width: 7%;" title="破损不堪"></div><div class="progress-bar progress-bar-bs" style="width: 55%;" title="战痕累累"></div></div></div></div></div><div class="market_listing_item_name_block"><span class="market_listing_item_name economy_item_hoverable" style="color: var(--csgoColor);">${data.data.goods_infos[csgoId].short_name}(${csgoAbrasion(+index.asset_info?.paintwear)})</span><div style="line-height: 35px;">${index.asset_info.info?.fraudwarnings ? "❗" + index.asset_info.info.fraudwarnings : ""}</div><div class="market_listing_row_details economy_item_hoverable"><div class="sticker_info sticker_infoBUFF" style="width:100px; margin:4px; padding:8px;"></div></div></div></div>`) BUFFtable.insertAdjacentHTML("beforeend", `<tr><td align="right" class=""><a href="javascript:" data-index="${initNum - 1}">${initNum}</a></td><td align="right">${steamPrice}</td><td align="right">${index.price}</td><td align="right">${(steamPrice - index.price).toFixed(2)}</td><td>${((1 - index.price / steamPrice) * 100).toFixed(2) + "%"}</td></tr>`) if (index.asset_info.info?.stickers.length !== 0) { sticker = document.querySelectorAll(".sticker_infoBUFF")[initNum - 1] for (let j = 0; j < index.asset_info.info.stickers.length; j++) { sticker.insertAdjacentHTML("beforeend", `<div class="sticker"><div class="sticker-2"><a href="https://buff.163.com/market/csgo#game=csgo&page_num=1&search=印花 | ${index.asset_info.info.stickers[j].name}&tab=selling">${index.asset_info.info.stickers[j].name}</a><div>价格:${index.asset_info.info.stickers[j]?.sell_reference_price ? "¥" + index.asset_info.info.stickers[j].sell_reference_price : "暂无价格"}</div><div>磨损度:${index.asset_info.info.stickers[j]?.wear ? ((1 - +index.asset_info.info.stickers[j].wear) * 100).toFixed(2) + "%" : "完美无缺"}</div></div><img width="64" height="48" src="${index.asset_info.info.stickers[j].img_url}"></div>`) } } if (index.asset_info.info?.keychains.length !== 0) { for (let j = 0; j < index.asset_info.info.keychains.length; j++) { sticker.insertAdjacentHTML("beforeend", `<div class="sticker"><div class="sticker-2" style="transform: translateY(50%);left: 85%;"><a href="https://buff.163.com/market/csgo#game=csgo&page_num=1&search=挂件 | ${index.asset_info.info.keychains[j].name}&tab=selling">挂件 | ${index.asset_info.info.keychains[j].name}</a><div>挂件价格:${index.asset_info.info.keychains[j]?.sell_reference_price ? "¥" + index.asset_info.info.keychains[j].sell_reference_price : "暂无价格"}</div><div>挂件模板:${index.asset_info.info?.keychains[j].pattern || "暂无模板"}</div><div style="color: ${index.asset_info.info.keychains[j]?.pattern_color || "rgb(150, 150, 150)"}">挂件颜色:${index.asset_info.info.keychains[j]?.pattern_color || "暂无颜色"}</div></div><img width="64" height="48" src="${index.asset_info.info.keychains[j].img_url}"></div>`) } } initNum++ } let getBuff = document.querySelectorAll(".getBUFF") for (let i = 0; i < getBuff.length; i++) { getBuff[i].addEventListener("click", function () { let BuffData = {} BuffData.appid = this.dataset.appid BuffData.assetid = this.dataset.assetid BuffData.classid = this.dataset.classid BuffData.contextid = this.dataset.contextid BuffData.instanceid = this.dataset.instanceid BuffData.sell_order_id = this.dataset.sell_order_id let code = this.firstElementChild code.textContent = "正在跳转" location.href = `https://buff.163.com/goods/${csgoId}?appid=730&classid=${BuffData.classid}&instanceid=${BuffData.instanceid}&assetid=${BuffData.assetid}&contextid=${BuffData.contextid}&sell_order_id=${BuffData.sell_order_id}` }) } pageNum++ }, onerror(response) { throw new Error(response) showMsg(".BUFF-msg", `列表数据错误 请查看控制台`) sliderObserver.unobserve(BUFFloading) } }) } }, 500) } function upSteamDate() { let steamMenu = document.querySelector(".store_nav_bg") if (!steamMenu) return let timeStamp = new Date().getTime() let state = JSON.parse(localStorage.getItem("menu")) let menuData = [] const steamDate = { "0": { "name": "即时战略游戏节", "date": "1月21日 - 1月29日", "timeStampStart": 1737396000000, "timeStampEnd": 1738087200000 }, "1": { "name": "挂机游戏节", "date": "2月4日 - 2月11日", "timeStampStart": 1738605600000, "timeStampEnd": 1739210400000 }, "2": { "name": "沙发合作游戏节", "date": "2月11日 - 2月18日", "timeStampStart": 1739210400000, "timeStampEnd": 1739815200000 }, "3": { "name": "Steam新品节-2025年2月版", "date": "2月25日 - 3月4日", "timeStampStart": 1740420000000, "timeStampEnd": 1741024800000 }, "4": { "name": "视觉小说游戏节", "date": "3月4日 - 3月11日", "timeStampStart": 1741024800000, "timeStampEnd": 1741629600000 }, "5": { "name": "2025年Steam春季特卖", "date": "3月14日 - 3月21日", "timeStampStart": 1741888800000, "timeStampEnd": 1742493600000 }, "6": { "name": "城市营造及殖民模拟游戏节", "date": "3月25日 - 4月1日", "timeStampStart": 1742839200000, "timeStampEnd": 1743444000000 }, "7": { "name": "推箱子游戏节", "date": "4月22日 - 4月29日", "timeStampStart": 1745258400000, "timeStampEnd": 1745863200000 }, "8": { "name": "战争游戏节", "date": "4月29日 - 5月6日", "timeStampStart": 1745863200000, "timeStampEnd": 1746468000000 }, "9": { "name": "生物收集游戏节", "date": "5月13日 - 5月20日", "timeStampStart": 1747072800000, "timeStampEnd": 1747677600000 }, "10": { "name": "僵尸大战吸血鬼游戏节", "date": "5月27日 - 6月3日", "timeStampStart": 1748282400000, "timeStampEnd": 1748887200000 }, "11": { "name": "Steam新品节-2025年6月版", "date": "6月10日 - 6月17日", "timeStampStart": 1749492000000, "timeStampEnd": 1750096800000 }, "12": { "name": "钓鱼游戏节", "date": "6月17日 - 6月24日", "timeStampStart": 1750096800000, "timeStampEnd": 1750701600000 }, "13": { "name": "2025年Steam夏日特卖", "date": "6月27日 - 7月11日", "timeStampStart": 1750960800000, "timeStampEnd": 1752170400000 }, "14": { "name": "自动化游戏节", "date": "7月15日 - 7月22日", "timeStampStart": 1752516000000, "timeStampEnd": 1753120800000 }, "15": { "name": "竞速游戏节", "date": "7月29日 - 8月5日", "timeStampStart": 1753725600000, "timeStampEnd": 1754330400000 }, "16": { "name": "4X 游戏节", "date": "8月12日 - 8月19日", "timeStampStart": 1754935200000, "timeStampEnd": 1755540000000 }, "17": { "name": "第三人称射击游戏节", "date": "8月26日 - 9月2日", "timeStampStart": 1756144800000, "timeStampEnd": 1756749600000 }, "18": { "name": "政治模拟游戏节", "date": "9月9日 - 9月16日", "timeStampStart": 1757354400000, "timeStampEnd": 1757959200000 }, "19": { "name": "2025年Steam秋季特卖", "date": "9月30日 - 10月7日", "timeStampStart": 1759168800000, "timeStampEnd": 1759773600000 }, "20": { "name": "Steam 新品节 - 2025 年 10 月版", "date": "10月14日 - 10月21日", "timeStampStart": 1760378400000, "timeStampEnd": 1760983200000 }, "21": { "name": "Steam尖叫游戏节4", "date": "10月28日 - 11月4日", "timeStampStart": 1761588000000, "timeStampEnd": 1762192800000 }, "22": { "name": "动物游戏节", "date": "11月11日 - 11月18日", "timeStampStart": 1762797600000, "timeStampEnd": 1763402400000 }, "23": { "name": "体育游戏节", "date": "12月9日 - 12月16日", "timeStampStart": 1765216800000, "timeStampEnd": 1765821600000 }, "24": { "name": "2025 年 Steam 冬季特卖", "date": "12月19日 - 2026年1月6日", "timeStampStart": 1766080800000, "timeStampEnd": 1767636000000 } } steamMenu.insertAdjacentHTML("afterbegin", `<div id="steam-date"><span id="menu-option"><span id="menu-msg" style="color: rgb(101 101 101);" data-index="5">2025年Steam春季特卖✨</span><div id="menu"></div></span><span id="steam-date-time" style="margin: 0 5px"></span><span id="steam-date-msg" style="flex-shrink: 0"></span></div>`) let menu = document.getElementById("menu") let steamOption = document.getElementById("steam-option") let menuMsg = document.getElementById("menu-msg") let steamDateTime = document.getElementById("steam-date-time") let steamDateMsg = document.getElementById("steam-date-msg") let intervalId = null for (let i = 0; i < Object.keys(steamDate).length; i++) { if (steamDate[i].timeStampStart <= timeStamp) { if (steamDate[i].timeStampEnd >= timeStamp) { menu.insertAdjacentHTML("beforeend", `<div data-value="${steamDate[i].name}" data-index="${i}">${steamDate[i].name}-正在进行</div>`) menuMsg.innerText = steamDate[i].name menuMsg.dataset.index = i } else menu.insertAdjacentHTML("beforeend", `<div data-value="${steamDate[i].name}" style="text-decoration: line-through" data-index="${i}">${steamDate[i].name}-已结束</div>`) } else menu.insertAdjacentHTML("beforeend", `<div data-value="${steamDate[i].name}" data-index="${i}">${steamDate[i].name}</div>`) } if (state) { menuMsg.innerText = state[0] menuMsg.dataset.index = state[1] } upMenuDate(menuMsg.dataset.index) menu.addEventListener("click", (e) => { let ele = e.target if (!ele.dataset.value) return menuData = [ele.dataset.value, ele.dataset.index] menuMsg.innerText = menuData[0] menuMsg.dataset.index = menuData[1] menuMsg.style.textDecoration = ele.style.textDecoration ? "line-through" : "" localStorage.setItem("menu", JSON.stringify(menuData)) upMenuDate(menuData[1]) }) function upMenuDate(menuDataIndex) { let steamDateIndex = steamDate[menuDataIndex]; steamDateMsg.innerText = steamDateIndex.date if (intervalId !== null) clearInterval(intervalId); intervalId = setInterval(() => { const time = getDate(); let timeDifference = (steamDateIndex.timeStampStart - time.timeStatus) / 1000 if (timeDifference >= 0) { steamDateTime.innerText = `还剩${parseInt(timeDifference / 86400)}天${parseInt((timeDifference % (24 * 60 * 60)) / (60 * 60))}小时${parseInt(timeDifference % 3600 / 60)}分${parseInt(timeDifference % 60)}秒` } else { if (steamDateIndex.timeStampEnd >= time.timeStatus) { let timeDifferenceEnd = (steamDateIndex.timeStampEnd - time.timeStatus) / 1000 steamDateTime.innerText = `还剩${parseInt(timeDifferenceEnd / 86400)}天${parseInt((timeDifferenceEnd % (24 * 60 * 60)) / (60 * 60))}小时${parseInt(timeDifferenceEnd % 3600 / 60)}分${parseInt(timeDifferenceEnd % 60)}秒 结束` } else { steamDateTime.innerText = `已结束` } } }, 1000); } } upSteamDate() /** * 获取现在的时间 * @return {Object} - 时间对象 * */ function getDate() { let date = new Date() return { year: date.getFullYear(), month: date.getMonth() + 1, date: date.getDate(), sec: date.getSeconds(), timeStatus: date.getTime() } } })();