使用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);
})();

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

相关文章

  • js实现列表自动滚动循环播放

    js实现列表自动滚动循环播放

    这篇文章主要为大家详细介绍了js实现列表自动滚动循环播放,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • 原生js+css调节音量滑块

    原生js+css调节音量滑块

    这篇文章主要介绍了原生js+css调节音量滑块,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • Javascript insertAfter() 实现函数代码

    Javascript insertAfter() 实现函数代码

    DOM没有提供insertAfter()方法,我们可以自己扩展下。
    2011-10-10
  • JS使用window.requestAnimationFrame()实现逐帧动画

    JS使用window.requestAnimationFrame()实现逐帧动画

    这篇文章介绍了JS使用window.requestAnimationFrame()实现逐帧动画的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • 邮箱下拉自动填充选择示例代码附图

    邮箱下拉自动填充选择示例代码附图

    这篇文章主要介绍了邮箱下拉自动填充选择的具体实现,需要的朋友可以参考下
    2014-04-04
  • uni-app常用的几种页面跳转方式总结

    uni-app常用的几种页面跳转方式总结

    uni-app的页面跳转和小程序和vue很相似,只是方法和标签有所不同,这篇文章主要给大家介绍了关于uni-app常用的几种页面跳转方式,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • JavaScript trim 实现去除字符串首尾指定字符的简单方法

    JavaScript trim 实现去除字符串首尾指定字符的简单方法

    下面小编就为大家带来一篇JavaScript trim 实现去除字符串首尾指定字符的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • JavaScript高级函数应用之分时函数实例分析

    JavaScript高级函数应用之分时函数实例分析

    这篇文章主要介绍了JavaScript高级函数应用之分时函数,结合实例形式分析了javascript通过合理分时函数应用避免浏览器卡顿或假死的相关操作技巧,需要的朋友可以参考下
    2018-08-08
  • 基于JavaScript创建动态Dom

    基于JavaScript创建动态Dom

    这篇文章主要介绍了基于JavaScript创建动态Dom的相关资料,需要的朋友可以参考下
    2015-12-12
  • 如何使用 Intl.RelativeTimeFormat 在 JavaScript 中进行相对时间格式化

    如何使用 Intl.RelativeTimeFormat 在 JavaScript&nbs

    Intl.RelativeTimeFormat是JavaScript提供的一个国际化API,用于格式化相对时间,如"3天前"或"2年后",支持多种语言和配置选项,适用于社交媒体时间戳和事件提醒等场景,它简化了国际化的相对时间显示,使开发者能够根据用户的语言和区域设置轻松实现时间格式化
    2024-09-09

最新评论