您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Customize the number of wrap-up items
当前为
// ==UserScript== // @name WaniKani Customize Wrap Up // @namespace http://alsanchez.es/ // @include /^https?://(www\.)?wanikani\.com/review/session/?$/ // @version 3 // @grant none // @description Customize the number of wrap-up items // ==/UserScript== (function() { var numberOfItems = localStorage.getItem("wanikani-addon-number-of-wrap-up-items") || 10; var fn = loadingScreen.remove; var wrapUpActive = false; loadingScreen.remove = function() { loadingScreen.remove = fn; fn(); initialize(); } function initialize() { createIcon(); var wrapUp = document.getElementById("option-wrap-up"); wrapUp.addEventListener("click", function() { wrapUpActive = !wrapUpActive; if(wrapUpActive) { updateQueues(numberOfItems); } // Force available-count update $.jStorage.set("activeQueue", $.jStorage.get("activeQueue")); }); } function createIcon() { var container = $('<span style="cursor: pointer;">'); container.append($('<i class="icon-time"></i>')); var numberOfItemsLabel = $("<span>").html(numberOfItems); container.append(numberOfItemsLabel); container.click(function() { var answer = prompt("Number of items"); if(answer !== null) { numberOfItems = answer; numberOfItemsLabel.html(numberOfItems); localStorage.setItem("wanikani-addon-number-of-wrap-up-items", numberOfItems); } }); $("#stats").prepend(container); } function updateQueues(numberOfItems) { var activeQueue = getSortedActiveQueue(); var reviewQueue = $.jStorage.get("reviewQueue"); var newQueue = getSortedActiveQueue().concat(reviewQueue); numberOfItems = Math.min(numberOfItems, newQueue.length); $.jStorage.set("activeQueue", newQueue.slice(0, numberOfItems)); $.jStorage.set("reviewQueue", newQueue.slice(numberOfItems)); } function getSortedActiveQueue() { var currentItem = $.jStorage.get("currentItem"); var otherItems = $.jStorage.get("activeQueue").filter(function(item) { return item.id !== currentItem.id; }); return [ currentItem ].concat(otherItems); } })();