加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 运营中心 > 建站资源 > 经验 > 正文

javascript监听页面复制事件增加版权信息

发布时间:2021-12-27 18:17:20 所属栏目:经验 来源:互联网
导读:javascript监听页面复制事件添加版权信息这个功能可以使得我们的文章以及代码可以更好的得到宣传。 1.介绍 当页面需要做版权保护时,比如当用户复制我们网站的文章时,我们会希望在他copy的文章内容中添加一些版权信息,例如我们的网站地址。 2.实现方法 首
javascript监听页面复制事件添加版权信息这个功能可以使得我们的文章以及代码可以更好的得到宣传。
  
1.介绍
 
当页面需要做版权保护时,比如当用户复制我们网站的文章时,我们会希望在他copy的文章内容中添加一些版权信息,例如我们的网站地址。
 
2.实现方法
 
首先我们需要捕捉到用户的复制事件,这里我们可以使用document.oncopy来绑定触发事件,此时执行复制操作时将会触发addlink方法,addlink方法中将包含所有处理步骤
 
document.oncopy = addlink;
 
捕捉到复制事件后我们还需要在addlink事件执行一些操作
 
function addlink() {
 
    var body_element = document.body;
    var selection;
    selection = window.getSelection();
    
    var locationHref=document.location.href;
    var appendlink="rnrn 原文出自[ 一只大脸猫博客 ] 转载请保留原文链接: <a href='"+locationHref+"'>"+locationHref+"</a>";
    
    if (window.clipboardData) { // Internet Explorer    
        var copytext = selection + appendlink;
        
        window.clipboardData.setData ("Text", copytext);
        
        return false;
    
    } else {
    
        var copytext = selection + appendlink;
        var newdiv = document.createElement('div');
        newdiv.style.position='absolute';  
        newdiv.style.left='-99999px';
        body_element.appendChild(newdiv);
        newdiv.innerHTML = copytext;
        selection.selectAllChildren(newdiv);
        window.setTimeout(function() {
 
            body_element.removeChild(newdiv);
        
        },0);
    
    }
 
}
在上面的代码中使用了两种方法来兼容各种浏览器
 
1.直接通过浏览器接口操作剪切板,该方法在chrome firefox等版本较高的ie中可用
 
2.修改用户选中的内容 该方法基本上兼容所有浏览器
 
当浏览器不能直接操作剪切板时便会使用第二种方法来确保追加生效
 
3.完整代码
 
完整代码就是上面代码可以直接复制使用改掉一些需要改变的内容。

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读