是否有 GreaseMonkey 脚本可以禁用 Firefox (3.0) 中 JavaScript 的复制粘贴禁用功能?或者我应该在任何尝试此操作的网站上运行 NoScript 或其他扩展程序(其他东西可能会中断……)?
[rant] 绝对是最糟糕的“巧妙”使用 JavaScript 的方式。幸运的是,Safari 更易用,并且忽略了禁用复制粘贴的 JavaScript 黑客。Mozilla 的谁认为这是可以接受的?真丢脸。顺便问一下,哪个浏览器首先添加了这个“功能”,IE?[/rant]
答案1
(无效链接)diveintogreasemonkey.org 上的 Anti-Disabler 脚本如果你替换document.
为document.wrappedJSObject.
链接现在似乎已经失效,这里有一个返回链接:http://web.archive.org/web/20110830050224/http://diveintogreasemonkey.org/download/antidisabler.user.js
脚本如下:
// Anti-Disabler
// version 0.5 BETA!
// 2005-06-28
// Copyright (c) 2005, Mark Pilgrim
// Released under the GPL license
// http://www.gnu.org/copyleft/gpl.html
//
// --------------------------------------------------------------------
//
// This is a Greasemonkey user script.
//
// To install, you need Greasemonkey: http://greasemonkey.mozdev.org/
// Then restart Firefox and revisit this script.
// Under Tools, there will be a new menu item to "Install User Script".
// Accept the default configuration and install.
//
// To uninstall, go to Tools/Manage User Scripts,
// select "Anti-Disabler", and click Uninstall.
//
// --------------------------------------------------------------------
//
// ==UserScript==
// @name Anti-Disabler
// @namespace http://diveintomark.org/projects/greasemonkey/
// @description restore context menus on sites that try to disable them
// @include *
// @exclude http://mail.google.com/*
// @exclude https://mail.google.com/*
// ==/UserScript==
(function() {
var e, i, all;
document.onmouseup = null;
document.onmousedown = null;
document.oncontextmenu = null;
all = document.getElementsByTagName("*");
for (i = 0; i < all.length; i += 1) {
e = all[i];
e.onmouseup = null;
e.onmousedown = null;
e.oncontextmenu = null;
}
})();
//
// ChangeLog
// 2005-06-28 - 0.5 - MAP - updated GMail URL
// 2005-04-21 - 0.4 - MAP - linted
// 2005-04-21 - 0.3 - MAP - exclude GMail
// 2005-04-18 - 0.2 - MAP - tidy code
// 2005-04-01 - 0.1 - MAP - initial release
//
答案2
您可能需要转到 about:config 并将其设置dom.event.clipboardevents.enabled
为 false。这可以解决我遇到的页面干扰剪贴板的问题。
答案3
我并不经常吹嘘自己。我实际上正在寻找是否有人有比我的脚本更好的方法:
http://userscripts.org/scripts/show/131063
最终,我希望浏览器中有一个选项可以阻止 javascript 条目进入 onpaste 事件。
答案4
旧的怎么样无脚本选择火狐?
我尝试了你的答案上的网站,并被允许右键单击并保存。
然后,我打开了网站的 JavaScript 块并被阻止右键单击!