防止复制的网页添加“零碎”的方法

如今有的网站为了防止其余人转帖他们的内容而不写“转帖自。。。”,在你复制它网页内容的时候会自动增长“本文来自于如鹏网”这样的额外的文字。这原本无可厚非,可是它们的原理是首先监听用户的复制事件,当复制动做发生的时候取得用户选择的内容,在内容后添加“本文来自于如鹏网”,而后在用 clipboardData.setData设置新的粘贴板内容,可是c lipboardData.setData只支持Text、URL两种格式,没法设置HTML格式的粘贴板内容,所以形成复制出来的内容粘贴的时候一些html格式都丢失了,好比字体颜色、表格等等,很是麻烦。
若是使用Maxthon浏览器,有以下两种解决思路:
一、思路1
(1)选中要复制的部分,点击右键选择“查看选定区域源代码”;
(2)在弹出的记事本中将文件另存为htm文件,也就是文件名中输入“1.htm”之类的带htm后缀的文件名。
(3)用浏览器打开刚才保存的htm文件,全选,复制就能够了。
二、思路2 (推荐方法)
(1)选择主菜单的【工具】→【内容控制】→【禁止运行Javascript】,而后就能够任意的复制而没有“零碎”了
(2)复制完了再次选择主菜单的【工具】→【内容控制】→【禁止运行Javascript】,将【禁止运行Javascript】前的勾选去掉便可。

使用普通的IE浏览器有以下两种解决思路:
一、思路1
(1)选中要复制的部分;
(2)在地址栏中输入
javascript.:var bjSelection = document.selection;var bjTxtRange=objSelection.createRange();clipboardData.setData("text",objTxtRange.htmlText);alert("复制成功");
而后回车,这时候IE七、IE8浏览器可能会提示是否容许操做剪贴板,点击【容许访问】便可。
(3)打开记事本,Ctrl+V粘贴,而后另存为一个htm文件,也就是文件名中输入“1.htm”之类的带htm后缀的文件名。
(4)用浏览器打开刚才保存的htm文件,全选,复制就能够了。
原理就是地址栏中的javascript代码会被执行,这段代码的做用就是将选中部分的HTML拷贝到剪切板中(关于代码的详细解释参考这篇文章《 取得网页选中部分HTML的方法 》 ),因为添加“零碎”的代码没有对此进行控制(也没法控制),所以复制出来的HTML就是没有零碎的了,保存成htm再复制就带格式同时没有零碎了。 二、思路2 禁用javascript (1)打开internat选项,选择安全标签, (2)点击下方的自定义级别,这时会弹出安全设置对话框,拖动滚动条找到图示脚本-活动脚本,并选择禁用; (3)再复制内容就不会有零碎了。 原理:由于添加“零碎”的原理是监听用户的复制事件,而后向复制的内容中添加“零碎”,这些逻辑都是javascript代码,咱们禁用IE的javascript,这样那些代码就不会执行了。 很显然Maxthon中的两种方法和IE中的两种方法原理都是同样的,不过Maxthon的功能帮咱们省了不少事情。
相关文章
相关标签/搜索