使用js复制链接中的部分文字的方法


Posted in Javascript onJuly 30, 2015

网页上面的链接一般鼠标放上去就是一个手指的形状,导致不能拖动鼠标进行复制,下面这段JS就是让你能够实现复制的,将这段代码保存成chrome的书签,需要复制的时候点击这个书签,然后按着ctrl键,就可以复制链接上面的文字了

复制链接中的部分文字的实现代码如下:

javascript: (function() {
  var h, checked = true,
  down = false;
  document.addEventListener('mouseover',
  function(e) {
    var link, c = '',
    target = e.target;
    if (target.nodeName == 'A') {
      if (target.hasChildNodes) {
        for (var i = 0; i < target.childNodes.length; i++) {
          if (target.childNodes[i].nodeName == 'INPUT') return;
        }
      }
      link = target;
    }
    if (target.parentNode.nodeName == 'A' && target.nodeName != 'IMG' && target.nodeName != 'INPUT') {
      link = target.parentNode;
    }
    if (!link) return;
    if (checked) {
      h = link.href;
      if (link.style.cssText) c = link.style.cssText;
    }
    function _click(e) {
      link.removeEventListener(e.type, arguments.callee, false);
      e.preventDefault();
    }
    function _keydown(e) {
      var k = parseInt(e.keyCode);
      if (k < 48 && k != 17) return;
      document.removeEventListener(e.type, arguments.callee, false);
      down = true;
      link.removeAttribute('href');
      link.setAttribute('style', c + 'cursor:text!important;');
      link.addEventListener('click', _click, false);
    }
    document.addEventListener('keydown', _keydown, false);
    link.addEventListener('mouseout',
    function(e) {
      var k = link.compareDocumentPosition(e.relatedTarget);
      if (k == 20 || k == 0) {
        checked = false;
      } else {
        link.removeEventListener(e.type, arguments.callee, false);
        link.removeEventListener('click', _click, false);
        document.removeEventListener('keydown', _keydown, false);
        checked = true;
        if (down) {
          down = false;
          link.setAttribute('href', h);
          if (c == '') {
            link.removeAttribute('style');
          } else {
            link.setAttribute('style', c);
          }
        }
      }
    },
    false);
  },
  false);
})();

以上就是复制链接中的部分文字的实现代码,希望大家可以喜欢。

Javascript 相关文章推荐
兼容FireFox 的 js 日历 支持时间的获取
Mar 04 Javascript
jquery移除button的inline onclick事件(已测试及兼容浏览器)
Jan 25 Javascript
JQueryEasyUI datagrid框架的基本使用
Apr 08 Javascript
JavaScript代码实现左右上下自动晃动自动移动
Apr 08 Javascript
通过正则表达式获取url中参数的简单实现
Jun 07 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
Jul 27 Javascript
微信小程序 保留小数(toFixed)详细介绍
Nov 16 Javascript
PHP+jquery+ajax实现分页
Dec 09 Javascript
超全面的javascript中变量命名规则
Feb 09 Javascript
微信小程序 实现点击添加移除class
Jun 12 Javascript
Vue.js中使用iView日期选择器并设置开始时间结束时间校验功能
Aug 12 Javascript
vue-router实现嵌套路由的讲解
Jan 19 Javascript
JS如何实现文本框随文本的长度而增长
Jul 30 #Javascript
js代码实现随机颜色的小方块
Jul 30 #Javascript
js代码验证手机号码和电话号码是否合法
Jul 30 #Javascript
javascript设计模式之对象工厂函数与构造函数详解
Jul 30 #Javascript
js判断浏览器类型及设备(移动页面开发)
Jul 30 #Javascript
javascript中if和switch,==和===详解
Jul 30 #Javascript
用javascript实现自动输出网页文本
Jul 30 #Javascript
You might like
PHP图片自动裁切应付不同尺寸的显示
2014/10/16 PHP
PHP 实现判断用户是否手机访问
2015/01/21 PHP
jQuery实现伸展与合拢panel的方法
2015/04/30 Javascript
jQuery插件FusionWidgets实现的AngularGauge图效果示例【附demo源码】
2017/03/23 jQuery
详解如何在vue项目中引入elementUI组件
2018/02/11 Javascript
jQuery简单实现的HTML页面文本框模糊匹配查询功能完整示例
2018/05/09 jQuery
微信小程序实现的自定义分享功能示例
2019/02/12 Javascript
更强大的vue ssr实现预取数据的方式
2019/07/19 Javascript
JS+CSS实现炫酷光感效果
2020/09/05 Javascript
全面解析js中的原型,原型对象,原型链
2021/01/25 Javascript
[49:18]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 OG vs TNC
2018/04/01 DOTA
python实现端口转发器的方法
2015/03/13 Python
python判断字符串是否包含子字符串的方法
2015/03/24 Python
python中安装模块包版本冲突问题的解决
2017/05/02 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
2018/05/29 Python
python实现电脑自动关机
2018/06/20 Python
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
Python多图片合并PDF的方法
2019/01/03 Python
Django模型序列化返回自然主键值示例代码
2019/06/12 Python
Python 如何优雅的将数字转化为时间格式的方法
2019/09/26 Python
如何关掉pycharm中的python console(图解)
2019/10/31 Python
Python partial函数原理及用法解析
2019/12/11 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
2020/02/29 Python
不到20行实现Python代码即可制作精美证件照
2020/04/24 Python
Bose美国官网:购买Bose耳机和音箱
2019/03/10 全球购物
欧洲、亚洲、非洲和拉丁美洲的度假套餐:Great Value Vacations
2019/03/30 全球购物
经典c++面试题五
2014/12/17 面试题
园林资料员岗位职责
2013/12/30 职场文书
革命先烈的英雄事迹材料
2014/02/15 职场文书
实习生岗位职责
2014/04/12 职场文书
作风建设演讲稿
2014/05/23 职场文书
群众路线教育实践活动批评与自我批评
2014/09/15 职场文书
2016年春节慰问信息
2015/03/25 职场文书
2016应届毕业生自荐信范文
2016/01/28 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
Nginx工作原理和优化总结。
2021/04/02 Servers