您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Add a button on Box website that can copy explorer path of Box folder.
当前为
// ==UserScript== // @name Copy explorer path of Box folder // @description Add a button on Box website that can copy explorer path of Box folder. // @namespace https://github.com/kevinzch/Copy-explorer-path-of-Box-folder // @version 0.21 // @author Kevin // @include https://app.box.com/folder/* // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== // @grant none // @run-at document-end // ==/UserScript== (function() { 'use strict'; const copyExplorerPath = () => { try { let copyBtn = document.createElement('button'); copyBtn.textContent = 'フォルダパスをコピー'; copyBtn.style.backgroundColor = '#4baf4f'; copyBtn.style.color = 'white'; copyBtn.style.borderRadius = '8px'; copyBtn.style.padding = '0px 20px'; let searchbar = document.querySelector('.header-search.prevent-item-deselection.HeaderSearch-isNewQuickSearch'); searchbar.appendChild(copyBtn); copyBtn.addEventListener('click', function(){ // Set menu button let hiddenPathButton = document.querySelector('button.btn-plain.ItemListBreadcrumbOverflow-menuButton'); let topOfBreadcrumbList = document.querySelector('ol.ItemListBreadcrumb-list'); let breadcrumb = topOfBreadcrumbList.querySelectorAll('[class=ItemListBreadcrumb-listItem]'); let lastBreadcrumb = topOfBreadcrumbList.querySelector('.ItemListBreadcrumb-listItem.is-last>.ItemListBreadcrumb-currentItemTitle'); let text = "Box\\"; // Click menu button only if it exists if ( hiddenPathButton ){ hiddenPathButton.click(); setTimeout(function() { let hiddenList = document.querySelector('div.dropdown-menu-element.dropdown-menu-enabled'); let list = hiddenList.querySelectorAll('[data-resin-target=openfolder]'); for (let item of list){ text += item.textContent + "\\"; } // Click again to hide menu hiddenPathButton.click(); },200); } setTimeout(function() { for (let item of breadcrumb){ text += item.textContent + "\\"; } text += lastBreadcrumb.textContent; text = text.replace("All Files\\", ""); text = text.replace("すべてのファイル\\", ""); navigator.clipboard.writeText(text); alert("下記のパスをコピーしました。\r\n" + text); },200); }) } catch (e) { setTimeout(() => { copyExplorerPath(); }, 500); } }; setTimeout(() => { copyExplorerPath(); }, 100); })();