比如说这个网站, 用 Firefox 打开 (本文不教其它浏览器哟):
有时候会觉得被网站耍的感觉, 想直接右键 Google search 相关内容深入了解, 不能。给一大堆联络地址, URL, 要手抄不成 ?
如果有心人要 copy, 不会天真以为 TA 找不到方法 ? 这种措施非但阻止不了有心人用程序复制网页, 且只会为难一般用户。
通常我们想到的第一个解决方法是 disable javascript, 但是 disable liao 就不给进:
当然, 虽然 Ctrl+S 被禁止, 但是要 Save Page As 还是很容易的:
但是用滑鼠 navigate 不到,选不到字, 而且右键又没 menu 出来。
但是其实呢按 Shift+F10 键是能打开 menu 的哦(这个 shortcut key 是在 destkop, file explore...等等其它地方都能用的), 缺点只是无法选地方打开:
其实更好的打开的右键做法,是输入浏览 about:config 网址。
Enter 选 I'll be careful, I promise!, 就会看到很多个 listing, 在 Search 那里输入 context 关键字(如果没有自动搜索就按 Enter):
在 dom.event.contextmenu.enabled 那边, 双击那个 value 栏目的 true , 就会改成 false
就可以随时随地按右键了。
打开的右键,你可以选择 View Page Source 或 Inspect Element 从那里 Copy 字体。但是麻烦罗, 又要看代码。
所以这里有懒人包做法,直接去选 View -> Page Style -> No Style
如果要维持 format 呢 ? 这里有一个终极的方法。
打开你平时用的 File Explorer, 然后 Ctrl+L 输入 %appdata%\Mozilla\Firefox
按 Enter, 就会来到这里:
然后选 Profiles -> 随机字.default folder, 来到:
你电脑还没有 chrome 这个 folder, 所以你要右键 New- > Folder 新建 chrome
进去那个 chrome folder, 里面是空的, 要新建一个 css 文件。
So, Win+R 键输入打开 notepad:
输入以下内容:
* { -moz-user-select: text !important;
* user-select: text !important; }
如图所示:
然后选 File -> Save As... 在刚才那个 Chrome 的 file path。
如果你背不上来那个 Chrome 的 path, 你可以 Ctrl+L 然后 Ctrl+C copy 那个 path, 然后在这里 Ctrl+L 然后 Ctrl+P paste 进来, Enter, 就能跳到那个 filepath 了。
这里 file name 要放 userContent.css , 然后 Save as type 选 All Files。
然后就搞掂 liao, 关掉所有 Firefox 然后开过。浏览这个网页, 用滑鼠 highlight 就变成通畅无阻了 :)
小白 Bonus:
除了用右键 copy, 你也可以highlight, 然后用滑鼠中间轮子 click 一下就 copy 了,要 paste 时就用滑鼠中间轮子 click 一下即可。至于 ctrl+c 被禁止我暂时想不到方便的解决方法。我不是 web developer 叻 :)
[2018 更新]:
以上的方法在佳礼中文网不能 works, 不过你可以制作自己的火狐扩展, 如:
xb@dnxb:~/firefox-enable-selection$ cat manifest.json
{
"manifest_version": 2,
"name": "firefox-enable-selection",
"version": "1.0",
"content_scripts": [
{
"matches": ["https://*cari.com.my/*"],
"js": ["selection.js"]
}
]
}
xb@dnxb:~/firefox-enable-selection$ cat selection.js
Array.from(document.querySelectorAll('div[onmousedown]')).forEach((element,index) =>
{
element.onmousedown=function(){return true}
});
Array.from(document.querySelectorAll('div[onselectstart]')).forEach((element,index) =>
{
element.onselectstart=function(){return true}
});
xb@dnxb:~/Downloads/misc/firefox-enable-selection$
因为佳礼的某些 div class 有 `<div class="d" onmousedown="return false;" onselectstart="return false;">` ,
此方法就是循环替代该 elemenets。
或者用我这个扩展。