您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
try to take over the world!
当前为
- // ==UserScript==
- // @name Deezer - Fix favorite tracks sorting
- // @namespace http://tampermonkey.net/
- // @version 0.2
- // @description try to take over the world!
- // @author You
- // @match https://www.deezer.com/*
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- function rafAsync() {
- return new Promise(resolve => {
- requestAnimationFrame(resolve); //faster than set time out
- });
- }
- function checkElement(selector) {
- if (document.querySelector(selector) === null) {
- return rafAsync().then(() => checkElement(selector));
- } else {
- return Promise.resolve(true);
- }
- }
- let sortTracks = () => {
- checkElement('.dropdown .dropdown-toggle')
- .then((element) => {
- document.querySelectorAll('.dropdown .dropdown-toggle')[0].click();
- document.querySelectorAll('.dropdown .dropdown-menu .dropdown-item a')[0].click();
- });
- };
- (function(history){
- var pushState = history.pushState;
- history.pushState = function(state) {
- if (typeof history.onpushstate == "function") {
- history.onpushstate({state: state});
- }
- if (arguments[2].match(/loved$/)) {
- sortTracks();
- }
- return pushState.apply(history, arguments);
- };
- })(window.history);
- if (window.location.href.match(/loved$/)) {
- sortTracks();
- }
- })();