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

 更新时间:2015年07月30日 15:00:43   作者:彩虹糖tang  
这篇文章介绍了使用js复制链接中的部分文字的方法,技巧很实用,需要的朋友可以参考下

网页上面的链接一般鼠标放上去就是一个手指的形状,导致不能拖动鼠标进行复制,下面这段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实现全屏页面滚动效果

    javascript实现全屏页面滚动效果

    这篇文章主要为大家详细介绍了javascript实现全屏页面滚动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • js 获取、清空input type=

    js 获取、清空input type="file"的值示例代码

    本篇文章主要是对js获取、清空input type="file"的值的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-02-02
  • 纯编码实现微信小程序弹幕效果(非视频底)

    纯编码实现微信小程序弹幕效果(非视频底)

    这篇文章主要介绍了微信小程序弹幕纯编码实现,这种效果是非视频底,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • 网页中JS函数自动执行常用三种方法

    网页中JS函数自动执行常用三种方法

    这篇文章主要为大家详细介绍了网页中JS函数自动执行常用三种方法,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • js如何实现小程序wx.arrayBufferToBase64方法实例

    js如何实现小程序wx.arrayBufferToBase64方法实例

    这篇文章主要给大家介绍了关于js如何实现小程序wx.arrayBufferToBase64方法的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-03-03
  • js实现上传图片之上传前预览图片

    js实现上传图片之上传前预览图片

    此功能用js实现,然后在fileupload控件的change事件中调用,这样当用fileupload选择完图片以后,图片就会自动显示出来了,感兴趣的各位可以参考下哈
    2013-03-03
  • js parseInt的陷阱分析小结

    js parseInt的陷阱分析小结

    js parseInt的陷阱分析小结,当第一个字符为0时,Js会把它看成一个8进制数字,其他8进制之外的字符都回被忽略掉。
    2011-03-03
  • js实现详情页放大镜效果

    js实现详情页放大镜效果

    这篇文章主要为大家详细介绍了js实现详情页放大镜效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10
  • JS实现数据动态渲染的竖向步骤条

    JS实现数据动态渲染的竖向步骤条

    这篇文章主要为大家详细介绍了JS实现数据动态渲染的竖向步骤条,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • 一篇文章搞定JavaScript类型转换(面试常见)

    一篇文章搞定JavaScript类型转换(面试常见)

    这篇文章主要介绍了一篇文章搞定JavaScript类型转换(面试常见),非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-01-01

最新评论