您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Allow Copy (include hot keys and some css) & Context Menu. Disable (remove) copy text protection and allow copy for all sites. Thanks Lex1 for example http://lexi.ucoz.ru/buttons.html
- // ==UserScript==
- // @name Allow Copy and Context Menu Continued
- // @version 7.3.4
- // @author Anonimous
- // @namespace https://greasyfork.org/en/users/16081-lolipop
- // @description Allow Copy (include hot keys and some css) & Context Menu. Disable (remove) copy text protection and allow copy for all sites. Thanks Lex1 for example http://lexi.ucoz.ru/buttons.html
- // @include *
- // @license GPL version 3 or any later version; www.gnu.org/licenses/gpl-3.0.en.html
- // @grant none
- // @run-at document-start
- // ==/UserScript==
- ;(function(){
- /* handler names */
- /*
- * NOTE! 'drag', 'dragend', 'dragstart' - when drag text, use alt + selection for text or add them to array
- */
- var handlerNameArr = ['contextmenu', 'copy', 'cut', 'paste', 'mousedown', 'mouseup', 'beforeunload', 'beforeprint', 'keyup', 'keydown', 'select', 'selectstart'];
- /* remove protection of window */
- var removeProtection = function removeProtectionName(protectedWindow) {
- /*
- * document object in frames is same as window https://developer.mozilla.org/en-US/docs/Web/API/Window/frames
- * frames == iframe + frame
- */
- for(var i=0; i < handlerNameArr.length; i++){
- var handlerName = handlerNameArr[i];
- var handlerOnName = 'on' + handlerName;
- if(protectedWindow[handlerOnName])
- protectedWindow[handlerOnName] = null;
- protectedWindow.addEventListener(handlerName, function(e){ e.stopPropagation(); }, true);
- }
- };
- /* remove css protection */
- var removeCssProtection = function removeCssProtectionName() {
- var cssStyle = '* { -moz-user-select: text !important; user-select: text !important; } ';
- //GreaseMonkey only
- /* @grant GM_addStyle need */
- //GM_addStyle(cssStyle);
- var style = document.createElement('style');
- style.type = 'text/css';
- style.innerHTML = cssStyle;
- document.head.appendChild(style);
- };
- /* remove main window protection */
- removeProtection(window);
- /* remove frame window protection */
- var frameList = window.frames;
- for(var i = 0; i < frameList.length; i++) {
- try{
- removeProtection(frameList[i]);
- } catch(e){
- }
- }
- removeCssProtection();
- })();