您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Steam便捷加入购物车,不自动跳转购物车页面。
// ==UserScript== // @name Steam便捷加入购物车 // @namespace Steam便捷加入购物车 // @version 0.4 // @description Steam便捷加入购物车,不自动跳转购物车页面。 // @author HCLonely // @match https://store.steampowered.com/* // @require https://cdn.bootcss.com/sweetalert/2.1.2/sweetalert.min.js // @supportURL https://blog.hclonely.com/posts/578f9be7/ // @homepage https://blog.hclonely.com/posts/578f9be7/ // @grant GM_addStyle // @run-at document-end // ==/UserScript== (function($) { 'use strict'; function addToCart(appid){ swal({ title: "Steam便捷加入购物车", text: "正在获取游戏信息...", icon: "info", }); $.ajax({ url:'https://store.steampowered.com/app/'+appid, type:'get', success:(data)=>{ try{ let addToCart=data.match(/\<form name\=\"add\_to\_cart[\w\W]*?\<\/form\>/gim); if(addToCart){ swal({ title: "Steam便捷加入购物车", text: "获取游戏信息成功! \n正在处理游戏信息...", icon: "info", }); let inputArr=addToCart[0].match(/\<input type\=\"hidden\".*?\>/gim); let postData={}; for(let i=0;i<inputArr.length;i++){ let input=$(inputArr[i]); let key=input.attr('name'); let value=input.attr('value'); postData[key]=value; } swal({ title: "Steam便捷加入购物车", text: "获取游戏信息成功! \n处理游戏信息完成! \n正在加入购物车...", icon: "info", }); $.ajax({ url:'https://store.steampowered.com/cart/', type:'post', data:postData, success:(data)=>{ try{ let test=new RegExp('\<div class\=\"cart_row.*?data\-ds\-appid\=\"'+appid+'\"','g'); if(test.test(data)){ swal({ title: "Steam便捷加入购物车", text: "获取游戏信息成功! \n处理游戏信息完成! \n加入购物车成功!", icon: "success", }); }else{ swal({ title: "Steam便捷加入购物车", text: "获取游戏信息成功! \n处理游戏信息完成! \n加入购物车失败!", icon: "error", }); } }catch(e){ swal({ title: "Steam便捷加入购物车", text: "获取游戏信息成功! \n处理游戏信息完成! \n加入购物车失败!", icon: "error", }); } }, error:()=>{ swal({ title: "Steam便捷加入购物车", text: "获取游戏信息成功! \n处理游戏信息完成! \n加入购物车失败!", icon: "error", }); }, }); }else{ swal({ title: "Steam便捷加入购物车", text: "获取游戏信息成功! \n没有找到添加购物车按钮,请手动添加!", icon: "warning", buttons: { cancel: "关闭", 手动添加: true, }, }) .then((value) => { if(value) window.open('https://store.steampowered.com/app/'+appid,'_blank') }); } }catch(e){ swal({ title: "Steam便捷加入购物车", text: "脚本出错!", icon: "error", }); console.error(e); } }, error:e=>{ swal({ title: "Steam便捷加入购物车", text: "获取游戏信息失败!", icon: "error", }); console.error(e); }, }); } function addBtn(){ $('.ds_options').parent().not(':contains("添加至购物车")').append(`<div class="ds_options hclonely btnv6_green_white_innerfade"><span>添加至购物车</span></div>`); $('.ds_options.hclonely').click(function(e){ e.preventDefault(); addToCart($(this).parent().attr('data-ds-appid')); }); } addBtn(); setInterval(()=>{ if($('.ds_options').parent().not(':contains("添加至购物车")').length>0) addBtn(); },1500); GM_addStyle(`.hclonely{position: absolute;right: 0;top: 25px;z-index: 999999;padding: 0 !important;}`); })(jQuery);