JavaScript实现复制文章自动添加版权

第一种

<script type="text/javascript">
document.body.oncopy = function(){
  setTimeout(
    function (){
    var text = clipboardData.getData("text");
    if(text){
      text = text + "\r\n本文来自: (www.jb51.net) 详细出处参考:"+location.href; clipboardData.setData("text", text);
    }
  },100)
}
</script> 

注意:这段代码必须复制到 body 区域里面才能生效,放到 head 区域内是不起作用的。

第二种

$("body").bind('copy', function (e) {
 if (typeof window.getSelection == "undefined") return; //IE8 or earlier...

 var body_element = document.getElementsByTagName('body')[0];
 var selection = window.getSelection();

 //if the selection is short let's not annoy our users
 if (("" + selection).length < 30) return;

 //create a div outside of the visible area
 //and fill it with the selected text
 var newdiv = document.createElement('div');
 newdiv.style.position = 'absolute';
 newdiv.style.left = '-99999px';
 body_element.appendChild(newdiv);
 newdiv.appendChild(selection.getRangeAt(0).cloneContents());

 //we need a <pre> tag workaround
 //otherwise the text inside "pre" loses all the line breaks!
 if (selection.getRangeAt(0).commonAncestorContainer.nodeName == "PRE") {
 newdiv.innerHTML = "<pre>" + newdiv.innerHTML + "</pre>";
 }

 newdiv.innerHTML += "<br /><br />Read more at: <a href='"
 + document.location.href + "'>"
 + document.location.href + "</a> © MySite.com";

 selection.selectAllChildren(newdiv);
 window.setTimeout(function () { body_element.removeChild(newdiv); }, 200);
});

总结

以上就是小编为大家整理的两种利用JavaScript实现复制文章自动添加版权的方法,代码很简单,有需要的朋友们可以参考学习。

(0)

相关推荐

  • Javascript 实现复制(Copy)动作方法大全

    一.实现点击按钮,复制文本框中的的内容 <script type="text/javascript"> function copyUrl2() { var Url2=document.getElementById("biao1"); Url2.select(); // 选择对象 document.execCommand("Copy"); // 执行浏览器复制命令 alert("已复制好,可贴粘."); } <

  • 网站内容禁止复制和粘贴、另存为的js代码

    1.使右键和复制失效 方法1: 在网页中加入以下代码: 复制代码 代码如下: <script language="Javascript"> document.oncontextmenu=new Function("event.returnValue=false"); document.onselectstart=new Function("event.returnValue=false"); </script> 方法2:

  • javascript 三种数组复制方法的性能对比

    一. 三种数组复制方法 1. by slice var arr = [1, 2, 3], copyArr; copyArr = arr.slice(); 2. by concat var arr = [1, 2, 3], copyArr; copyArr = arr.concat(); 3. by loop var arr = [1, 2, 3], copyArr = []; for (var i=0, j=arr.length; i 二. 测试环境 浏览器: IE6+, FF 3.5.5, O

  • JS input文本框禁用右键和复制粘贴功能的代码

    复制代码 代码如下: function click(e) { if (document.all) { if (event.button==1||event.button==2||event.button==3) { oncontextmenu='return false'; } } if (document.layers) { if (e.which == 3) { oncontextmenu='return false'; } } } if (document.layers) { docume

  • 兼容主流浏览器的JS复制内容到剪贴板

    现在浏览器种类也越来越多,诸如 IE.Firefox.Chrome.Safari等等,因此现在要实现一个js复制内容到剪贴板的小功能就不是一件那么容易的事了. 在FLASH 9 时代,有一个通杀所有浏览器的js复制内容到剪贴板的方案: 这个方案是一个最流行的方法: 著名的Clipboard Copy解决方案 利用一个clipboard.swf作为桥梁,复制内容到剪贴板. 原理是:创建一个隐藏的flash文件,同时给给flash的变量FlashVars 赋值"clipboard=..",

  • 兼容IE与Firefox的js 复制代码

    function copyCode(id){ var testCode=document.getElementById(id).value; if(copy2Clipboard(testCode)!=false){ alert("生成的代码已经复制到粘贴板,你可以使用Ctrl+V 贴到需要的地方去了哦! "); } } copy2Clipboard=function(txt){ if(window.clipboardData){ window.clipboardData.clearDa

  • 用 javascript 实现的点击复制代码

    <title>标题</title> <input type="button" name="Submit" onClick='copyToClipBoard()' value="复制专题地址,传给QQ/MSN上的好友">  <script language="javascript">    function copyToClipBoard(){     var clipBoardC

  • javascript复制对象使用说明

    oldObj是一个对象,而不是值 例如var newObj=oldObj; 如果想oldObj改变的时候不影响到newObj: 可以这样写一个函数 复制代码 代码如下: function clone(myObj){ if(typeof(myObj) != 'object') return myObj; if(myObj == null) return myObj; var myNewObj = new Object(); for(var i in myObj) myNewObj[i] = clo

  • js 复制或插入Html的实现方法小结

    var bq=document.getElementsByTagName("标签或ID名")//ID是唯一无许分组,标签非唯一,有可能返回一个数组. div=document.createElement("div"); ...设置CSS风格 bq.appendChild(div);//ID唯一性的话只需要这样!在bq之后插入div层 bq[0].appendChild(div);//如果前面用的是标签!数组跟下标!在bq之后插入div层 bq.insertBefor

  • 多浏览器兼容性比较好的复制到剪贴板的js代码

    对于非ie浏览器他是用flash来实现的,js代码如下: 复制代码 代码如下: <script type="text/javascript"> function copy_code(copyText) { if (window.clipboardData) { window.clipboardData.setData("Text", copyText) } else { var flashcopier = 'flashcopier'; if(!docum

随机推荐