- Install Edge Browser
Win10 and Win11 come with Edge browser by default, other systems can download it from the address below.
https://www.microsoft.com/zh-cn/edge/download?form=MA13FJ
- Install Tampermonkey Extension
Also known as Tampermonkey, the Edge app store address is as follows:
-
Install the "Make Your Feishu More Useful" Script
-
Online Installation
Visit the website below and click "Install Now".
https://env-00jxt5o5005s-static.normal.cloudstatic.cn/index.html#/pages/list/detail?id=473205&host=greasyfork
You will be redirected to the script installation interface, click "Install".
2. Local Installation
Click on the Tampermonkey extension, then click "Add New Script".
:::div{style="max=width: 150px"}
:::
Copy the code below into the opened window.
// ==UserScript==
// @name Make Your Feishu More Useful (Optimized Version)
// @license GPL License
// @namespace https://bytedance.com
// @version 0.5
// @description Allows copying of any content in Feishu documents without permission restrictions, and enables right-click menu (copy/download images)
// @author NOABC
// @match *://*.feishu.cn/*
// @match *://*.larkoffice.com/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=feishu.cn
// @grant none
// @run-at document-start
// @downloadURL https://update.greasyfork.org/scripts/473205/%E8%AE%A9%E4%BD%A0%E7%9A%84%E9%A3%9E%E4%B9%A6%E6%9B%B4%E5%A5%BD%E7%94%A8%28%E4%BC%98%E5%8C%96%E7%89%88%29.user.js
// @updateURL https://update.greasyfork.org/scripts/473205/%E8%AE%A9%E4%BD%A0%E7%9A%84%E9%A3%9E%E4%B9%A6%E6%9B%B4%E5%A5%BD%E7%94%A8%28%E4%BC%98%E5%8C%96%E7%89%88%29.meta.js
// ==/UserScript==
(function () {
// Override addEventListener to handle copy and contextmenu events
const overrideEventListeners = () => {
const rawAddEventListener = EventTarget.prototype.addEventListener;
EventTarget.prototype.addEventListener = function (type, listener, options) {
if (type === 'copy') {
rawAddEventListener.call(this, type, event => {
event.stopImmediatePropagation();
return null;
}, options);
return;
}
if (type === 'contextmenu') {
rawAddEventListener.call(this, type, event => {
event.stopImmediatePropagation();
return listener(event);
}, options);
return;
}
rawAddEventListener.call(this, type, listener, options);
};
};
// Override XMLHttpRequest to manipulate permission responses
const overrideXHR = () => {
const rawOpen = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function (method, url, ...rest) {
this.addEventListener('readystatechange', function () {
if (this.readyState === 4 && url.includes('space/api/suite/permission/document/actions/state/')) {
let response = this.responseText;
try {
response = JSON.parse(response);
if (response.data && response.data.actions && response.data.actions.copy !== 1) {
response.data.actions.copy = 1;
Object.defineProperty(this, 'responseText', { value: JSON.stringify(response) });
Object.defineProperty(this, 'response', { value: response });
}
} catch (e) {
console.error('Failed to modify response:', e);
}
}
}, false);
rawOpen.call(this, method, url, ...rest);
};
};
// Run overrides immediately and on DOMContentLoaded
overrideEventListeners();
overrideXHR();
document.addEventListener('DOMContentLoaded', () => {
overrideEventListeners();
overrideXHR();
});
})();
- Enable Developer Mode in the Browser
To allow Tampermonkey to run properly, you need to enable developer mode. Click the extension button - Manage Extensions.
Enable "Developer Mode", then turn the Tampermonkey extension off and on again.