您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
easy clicks for zoltars
当前为
// ==UserScript== // @name Project Endor (Zoltar) // @namespace https://gf.qytechs.cn/en/users/12709 // @version 1.0.02 // @description easy clicks for zoltars // @author feihtality // @match https://www.google.com/evaluation/endor/* // @grant none // ==/UserScript== /*jshint esnext:true*/ if (/NOT a/.test(document.querySelector('h2').textContent) || /An error occurred/.test(document.querySelector('p').textContent)) { (function() { 'use strict'; var _p = document.querySelector('p'); if (!/previewand/.test(document.referrer) && _p && /An error occurred/.test(_p.textContent)) document.location.reload(); function make(tag) { return document.createElement(tag); } function get(val) { return document.querySelector('input[value="'+val+'"]'); } function get2(val) { return document.querySelector(`input[ng-true-value="'${val}'"]`); } var div = document.body.appendChild(make('DIV')), p1 = div.appendChild(make('P')), p2 = div.appendChild(make('P')), p3 = div.appendChild(make('P')), p4 = div.appendChild(make('P')), p5 = div.appendChild(make('p')), p6 = div.appendChild(make('P')), panel = { p1: { node: p1, options: {radio: true}, provider : { controller: make('BUTTON'), target: get('DIRECT_PROVIDER') }, retailer : { controller: make('BUTTON'), target: get('RETAILER') }, referral : { controller: make('BUTTON'), target: get('REFERRAL_AGGREGATOR') }, search : { controller: make('BUTTON'), target: get('SEARCH_ENGINE') }, market : { controller: make('BUTTON'), target: get('MARKETPLACE') }, deals : { controller: make('BUTTON'), target: get('DEALS_PROVIDER') }, content : { controller: make('BUTTON'), target: get('CONTENT_PUBLISHER') }, }, p2: { node: p2, options: {radio: true}, physnone : { controller: make('BUTTON'), target: get('NONE') }, single : { controller: make('BUTTON'), target: get('LOCAL_SINGLETON') }, singleRegionBranch : { controller: make('button'), target: get('SINGLE_REGION_BRANCHES') }, multiRegionBranch : { controller: make('button'), target: get('MULTIPLE_REGION_BRANCHES') }, }, p3: { node: p3, options: {radio: false}, virtual: { controller: make('button'), target: get2('VIRTUAL') }, custLoc: { controller: make('button'), target: get2('CUSTOMER_LOCATION') }, busiLoc: { controller: make('button'), target: get2('BUSINESS_LOCATION') }, }, p4: { node: p4, options: {radio: true}, goods : { controller: make('BUTTON'), target: get('GOODS') }, services : { controller: make('BUTTON'), target: get('SERVICES') }, both : { controller: make('BUTTON'), target: get('BOTH') }, }, p5: { node: p5, options: {radio: true}, direct : { controller: make('BUTTON'), target: get('DIRECT') }, both : { controller: make('BUTTON'), target: document.querySelector('input[value=BOTH]:not([name=product_type])') }, indirect : { controller: make('BUTTON'), target: get('INDIRECT') }, }, p6: { node: p6, options: {radio: true}, SUBMIT : { controller: make('BUTTON'), target: document.querySelector('input[type=submit]') }, } }; div.style.cssText = "z-index:10; position:fixed; top:10%;right:50%; background:#eee; opacity:0.9; transform:translateX(50%);"; div.className = 'zoltarpanel'; var css = document.head.appendChild(document.createElement('STYLE')); css.innerHTML = '.zoltarpanel p {margin:5px}'; function sel(group, item) { item.controller.onclick = () => { var prev = group.node.querySelector('[style]'); if (prev && group.options.radio === true) prev.style.background = ''; item.target.click(); if (group.options.radio === false) item.controller.style.background = item.controller.style.background === 'lightgreen' ? '' : 'lightgreen'; else item.controller.style.background = 'lightgreen'; scroller(item.target); }; } function scroller(loc, dt) { var getPos = function(el) { var offset = 0; while(el) { offset += el.offsetTop; el = el.offsetParent; } return offset; }, target = getPos(loc), pos = window.scrollY, dpos = Math.ceil((target-pos)/3); dt = dt ? dt-1 : 25; if (target === pos || dpos === 0 || dt === 0) return; window.scrollBy(0,dpos); setTimeout( () => scroller(loc, dt), dt); } for (var j of Object.keys(panel)) { for (var k of Object.keys(panel[j])) { if (k === 'node' || k === 'options') continue; panel[j].node.appendChild(panel[j][k].controller); panel[j][k].controller.textContent = k; sel(panel[j], panel[j][k]); } } })(); }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址