您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
修复Spark Standalone模式中,启用了`spark.ui.reverseProxy=true`之后,在任务详情页面,任意链接点击后跳转回首页的问题。
// ==UserScript== // @name Spark Standalone Master App Proxy Fix // @name:zh-CN Spark Standalone Master 反向代理链接修复 // @namespace https://rabit.pw/ // @version 0.2 // @description Fix links to Spark jobs descriptions and nav bar in Spark Standalone Master when spark.ui.reverseProxy=true. // @description:zh-CN 修复Spark Standalone模式中,启用了`spark.ui.reverseProxy=true`之后,在任务详情页面,任意链接点击后跳转回首页的问题。 // @author ttimasdf // @match http://*/proxy/* // @grant none // @run-at document-end // ==/UserScript== // ref: https://stackoverflow.com/a/17599814/1043209 (function() { 'use strict'; var imgs = document.getElementsByTagName("img");//"/static/spark-logo-77x50px-hd.png" // Check whether this is Spark Master page for (var i = 0, found = false; i < imgs.length && i < 3; i++) { if (imgs[i].getAttribute("src") == "/static/spark-logo-77x50px-hd.png") { found = true; } } if (!found) return; // Extract links var links = Array.from(document.links); links.push.apply(links, document.getElementsByTagName("a")); // get link to current page and extract http://xxxx/proxy/app-xxxx part var root = /^.*proxy\/[^\/]*/.exec(window.location.href)[0]; // console.log(links); var i; for (i = 0; i < links.length; i++ ) { var link = links[i].getAttribute('href'); if (/^\/(?!proxy).+/.test(link)) { console.log(link, "=>", root + link); links[i].setAttribute("href", root + link); } } })();