您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Расширенный функционал для работы с платформой JetLend
// ==UserScript== // @name JetLend Helper // @namespace https://gf.qytechs.cn/users/1256967 // @version 1.1.2 // @description Расширенный функционал для работы с платформой JetLend // @author Your Name // @match *://jetlend.ru/* // @icon https://jetlend.ru/static/favicon.ico // @grant GM_getValue // @grant GM_setValue // @grant GM_addStyle // @grant GM_xmlhttpRequest // @grant GM_notification // @connect jetlend.ru // @license MIT // ==/UserScript== (function() { 'use strict'; const CONFIG = { UPDATE_INTERVAL: 10000, DEFAULT_FILTERS: { minInterest: 18, minYTM: 30, maxTerm: 720, maxDebt: 200000, minDiscipline: 0.8 }, STYLES: ` .jl-helper-container { position: fixed; top: 20px; right: 20px; z-index: 9999; background: white; padding: 15px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); max-width: 800px; font-family: Arial, sans-serif; } .jl-section { margin: 10px 0; padding: 10px; border: 1px solid #eee; border-radius: 5px; } .jl-table { width: 100%; border-collapse: collapse; margin: 10px 0; } .jl-table th, .jl-table td { padding: 8px; border: 1px solid #ddd; text-align: center; } .jl-highlight { background-color: #e6ffe6 !important; } .jl-warning { background-color: #ffe6e6 !important; } .jl-controls { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 10px 0; } .jl-filter-input { width: 100%; padding: 5px; } ` }; class JetLendHelper { constructor() { this.state = { userData: null, primaryMarket: [], secondaryMarket: [], filters: JSON.parse(JSON.stringify(CONFIG.DEFAULT_FILTERS)), notifications: [] }; } init() { this.loadFilters(); this.injectStyles(); this.createUI(); this.loadData(); this.setupEventListeners(); this.startAutoUpdate(); } loadFilters() { const savedFilters = GM_getValue('filters'); if (savedFilters) { this.state.filters = savedFilters; } } injectStyles() { GM_addStyle(CONFIG.STYLES); } createUI() { const container = document.createElement('div'); container.className = 'jl-helper-container'; container.innerHTML = ` <h2>JetLend Helper</h2> <div class="jl-controls"> <button id="jl-refresh">Обновить данные</button> <button id="jl-settings">Настройки</button> <button id="jl-toggle-view">Свернуть</button> </div> <div id="jl-content"> ${this.renderUserInfo()} ${this.renderFilters()} ${this.renderPrimaryMarket()} ${this.renderSecondaryMarket()} </div> `; document.body.appendChild(container); } // Остальные методы остаются без изменений, за исключением: fetchData(endpoint) { return new Promise((resolve, reject) => { GM_xmlhttpRequest({ method: 'GET', url: `https://jetlend.ru${endpoint}`, onload: (response) => { if (response.status >= 200 && response.status < 300) { resolve(JSON.parse(response.responseText)); } else { reject(new Error(`HTTP error ${response.status}`)); } }, onerror: (error) => { reject(new Error(`Ошибка сети: ${error.statusText}`)); } }); }); } showNotification(message) { if (typeof GM_notification !== 'undefined') { GM_notification({ text: message, title: 'JetLend Helper', image: 'https://jetlend.ru/static/logo.png' }); } else if (Notification.permission === 'granted') { new Notification('JetLend Helper', { body: message }); } } handleFilterChange(e) { const filter = e.target.dataset.filter; const value = parseFloat(e.target.value); this.state.filters[filter] = value; GM_setValue('filters', this.state.filters); this.updateUI(); } } const helper = new JetLendHelper(); helper.init(); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址