您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a button to a YouTube channel's videos page which sorts recent uploads by views
当前为
- // ==UserScript==
- // @name YouTube Uploads Sorter Button
- // @namespace http://tampermonkey.net/
- // @version 0.12
- // @description Adds a button to a YouTube channel's videos page which sorts recent uploads by views
- // @author Lex
- // @include /^https?:\/\/(www\.)?youtube\.com\/(channel|user)\//
- // @require https://code.jquery.com/jquery-3.2.1.min.js
- // @grant none
- // ==/UserScript==
- (function($) {
- 'use strict';
- function addButton() {
- if ($("#sortViewButton").length == 0) {
- $("<button>").attr("id", "sortViewButton").html("Sort by Views").click(sortByViews).prependTo("#sort-menu");
- }
- }
- function getViews(e) {
- try {
- let viewsTitle = $(e).find("a[aria-label]").attr("aria-label");
- if (viewsTitle.search(/No views$/) > -1) // video has no views yet
- return 0;
- else
- return parseInt(/([\d,]+) views$/.exec(viewsTitle)[1].replace(/,/g, ""));
- } catch(err) {
- return 0;
- }
- }
- function sortByViews() {
- let container = $("#page-manager #primary #items:visible");
- let items = container.children();
- items.sort(function(a, b) {
- return getViews(a) < getViews(b);
- });
- items.detach().appendTo(container);
- }
- addButton(); // try to add the button immediately
- $("#sub-menu:visible").on("DOMNodeInserted", addButton); // but also add button whenever the #sub-menu is changed
- })(window.jQuery);