Section 2: This post teach you how to use CSS3 to disable highlight text on a webpage, hence avoid stealing of content by copying. [Permalink]
为了让这篇教程更整齐,我重新编辑过了
第一课:用 JavaScript 禁止 highlight。最基本的方法是用 onSelectStart,在大部分支援 JavaScript 的浏览器有效。
将以下代码放在 </head> 之前:
<script language="JavaScript">
// Disable highlighting only
document.onSelectStart=new Function("event.returnValue=false;");
</script>
就 JavaScript 我并非在行,但还是可以大致解释以上代码。 event.returnValue=false 的意思是用作禁止某个动作的默认效果的。——这么说吧,原本用户选择文字时,得到的效果应当是 highlight 文字;但这个默认效果被禁止了,自然就没法highlight 文字了。
浏览器如 Firefox, Opera 并不支援 onSelectStart,因此该用接下来的 CSS3 来个双管齐下。
第二课:用 CSS3 禁止 highlight。当然只在支援 CSS3 的浏览器适用。
使用 CSS3 中的 user-select,对所要生效的部分使用。
要在网页全面禁止 highlight,编辑网页的 CSS 部分 (<style> 标签;Blogger 用户则要进入 Edit HTML 页)
在 body { 之後加入以下代碼:
-moz-user-select: none; /* For Gecko (Mozilla Firefox) */
-webkit-user-select: none; /* For WebKit (Google Chrome, Safari) */
-o-user-select: none; /* For Presto (Opera) */
user-select: none;
以上已经包括几个常用的排版引擎,所以在这些著名浏览器上(需支援 CSS3 的版本)都可以成功地禁止 highlight。
嗯 看不太懂 来support一下 哈哈哈
回覆刪除很棒!你有那个天份,好不好!很清楚跟随的教程。
回覆刪除TcPinG:
回覆刪除我已经重新编辑过了,应该比较容易明白了……吧?
Cocoeriley:
你的“美女”称号被去掉了,哈哈 XD
你的教程完全改了?
回覆刪除Cocoeriley:
回覆刪除那些代码还是一样的~
想问一下,你的“read more”是manually “insert jump break”的吗?我曾经有试过一种教程是直接缩短post,类似read more,但整个post的页面缩得小而不美观。
回覆刪除还有预祝你成功入围和拿奖哦!
想问你,那个《第五届大马部落中文部落格祭》,那些post在submit之前还可以edit的吗?谢谢你!
回覆刪除Cocoeriley
回覆刪除对,所以很自由地要在哪儿加 read more 都可以~
在提交之前稍作编辑,是没人知道的…如果不放心要确认的话就直接去问主办当局吧~ :)
想问,如果我之前是没有放“read more",现在加上去的话,以前的帖子也不会有read more的呈现方式,对吧?
回覆刪除