您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
对所有网站生效,支持动态插入的input和select。浏览器需要安装Tampermonkey或者Greasemonkey扩展,安卓手机浏览器推荐Yandex或者Kiwi浏览器。支持SPA(比如vue)
当前为
// ==UserScript== // @name fill the input and select of form as last time inputed automatically // @name:zh-CN 使用上次输入的值自动填写表格 // @namespace http://tampermonkey.net/ // @description This script supports SPA like vue。 // @description:zh-CN 对所有网站生效,支持动态插入的input和select。浏览器需要安装Tampermonkey或者Greasemonkey扩展,安卓手机浏览器推荐Yandex或者Kiwi浏览器。支持SPA(比如vue) // @require https://greasyfork.org/scripts/440334-jquery-like-spa-operation-library/code/jQuery-like%20SPA%20operation%20library.js?version= 1020513 // @include http://* // @include https://* // @grant GM_setValue // @grant GM_getValue // @author yechenyin // @license MIT // @version 1.0.2 // ==/UserScript== jQuery.fn.saveChangedValue = function () { let that = this that.on('change', function () { let href = 'inputed_' + location.href.replace(/\?.*/, '') let inputs = '' if (typeof GM_getValue === 'undefined') inputs = localStorage[href] else if (GM_getValue(href)) { inputs = GM_getValue(href) } if (inputs) inputs = JSON.parse(inputs) else inputs = {} //console.log(this.constructor.name) //console.log(Object.keys(this)) let name = '' if (this.id) name = '#' + this.id else if ($(this).attr('name')) name = $(this).attr('name') else { for (let i = 0; i < that.length; i++) { if (this == that[i]) name = i } } inputs[name] = $(this).val() if (typeof GM_setValue === 'undefined') localStorage[href] = JSON.stringify(inputs) else GM_setValue(href, JSON.stringify(inputs)) //console.log(GM_getValue(href)) }) } jQuery.fn.recoverSavedValue = function () { this.inserted(function () { let that = this let href = 'inputed_' + location.href.replace(/\?.*/, '') //console.log(GM_getValue(href)) let inputs = '' if (typeof GM_getValue === 'undefined') inputs = localStorage[href] else if (GM_getValue(href)) { inputs = GM_getValue(href) } if (inputs) inputs = JSON.parse(inputs) else inputs = {} //console.log(inputs) if (Object.keys(inputs).length) { this.each(function () { let name = '' if (this.id) name = '#' + this.id else if ($(this).attr('name')) name = $(this).attr('name') else { for (let i = 0; i < that.length; i++) { if (this == that[i]) name = i } } if (inputs.hasOwnProperty(name)) { $(this).val(inputs[name]) } }) } }) } window.onload = function () { $('input, select').recoverSavedValue() $('input, select').inserted(function () { $('input, select').saveChangedValue() }) }