玩法介绍当前位置:星鸿娱乐 > 玩法介绍 > >

星鸿娱乐平台JavaScript实现复制或剪切内容到剪贴

  

[JavaScript,星鸿娱乐平台复制,剪切]JavaScript实现复制或剪切内容到剪贴板功能的方法

  

项目中需要实现一个点击按钮复制链接的功能,网上看到的几款插件,ZeroClipboard是通过flash实现的复制功能,随着越来越多的提议废除flash,能不能通过JS来实现复制剪切呢,今天分享一个兼容IE7浏览器复制的插件给大家,支持使用javascript实现复制、剪切和粘贴。

  
  方法。

  

  

复制  

  
  
  var copy = new clipBoard(document.getElementById('data'), {  beforeCopy: function() {  },  copy: function() {  return document.getElementById('data').value;  },  afterCopy: function() {  }  });  
  
  

复制将自动被调用,如果你想要自己调用:  

  
  
  var copy = new clipBoard(document.getElementById('data'));  copy.copyd();  
  
  

document.getElementById('data') :要获取的对象, 你也可以使用jQuery $('#data')  

  

剪切  

  

基本上与复制的实现方法相同:  

  
  
  var cut = new clipBoard(document.getElementById('data'), {  beforeCut: function() {  },  cut: function() {  return document.getElementById('data').value;  },  afterCut: function() {  }  });  
  
  

或者  

  
  
  var cut = new clipBoard(document.getElementById('data'));  cut.cut();  paste  var paste = new clipBoard(document.getElementById('data'), {  beforePaste: function() {  },  paste: function() {  return document.getElementById('data').value;  },  afterPaste: function() {  }  });  
  
  

或者  

  
  
  var paste = new clipBoard(document.getElementById('data'));  paste.paste();  
  
  

完整代码:  

  
  
  (function(name, fun) {  if (typeof module !== 'undefined' && module.exports) {  module.exports = fun();  } else if (typeof define === 'function' && define.amd) {  define(fun);  } else {  this[name] = fun();  }  })('clipBoard', function() {  "use strict";  function clipBoard(tar, options) {  this.options = options || {};  this.tar = tar[0] || tar;  // if options contain copy, copy will be applied soon  if (this.options.copy) {  this.copyd();  }  if(this.options.cut) {  this.cut();  }  if(this.options.paste) {  this.paste();  }  }  clipBoard.prototype.copyd = function(value) {  // before the copy it will be called, you can check the value or modify the value  if (this.options.beforeCopy) {  this.options.beforeCopy();  }  // if the options set copy function, the value will be set. then get the paramer value.

  // above all, if the value is null, then will be set the tar of value  value = value || this.tar.value || this.tar.innerText;  if (this.options.copy) {  value = this.options.copy();  }  // for modern browser  if (document.execCommand) {  var element = document.createElement('SPAN');  element.textContent = value;  document.body.appendChild(element);  if (document.selection) {  var range = document.body.createTextRange();  range.moveToElementText(element);  range.select();  } else if (window.getSelection) {  var range = document.createRange();  range.selectNode(element);  window.getSelection().removeAllRanges();  window.getSelection().addRange(range);  }  document.execCommand('copy');  element.remove ? element.remove() : element.removeNode(true);  }  // for ie  if (window.clipboardData) {  window.clipboardData.setData('text', value);  }  // after copy  if (this.options.afterCopy) {  this.options.afterCopy();  }  };  

  
  

  
  

(责任编辑:admin)

上一篇:JQuery插件Quicksand实现超炫的动画洗牌效果

下一篇:jq checkbox 的全选并ajax传参的实例

推荐内容

客户服务热线

010-400-12345

在线客服