js copy

Javascript 实现复制(Copy)动作方法大全

投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2014-06-20我要评论

现在浏览器种类也越来越多,诸如 IE、Firefox、Chrome、Safari等等,因此现在要实现一个js复制内容到剪贴板的小功能就不是一件那么容易的事了。

一、实现点击按钮,复制文本框中的的内容

?


1

2

3

4

5

6

7

8

9

10

11

<script type="text/javascript">

function copyUrl2()

{

var Url2=document.getElementById("biao1");

Url2.select(); // 选择对象

document.execCommand("Copy"); // 执行浏览器复制命令

alert("已复制好,可贴粘。");

}

</script>

<textarea cols="20" rows="10" id="biao1">用户定义的代码区域</textarea>

<input type="button" onClick="copyUrl2()" value="点击复制代码" />

二、复制专题地址和 url 地址,传给 QQ/MSN 上的好友

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>Js复制代码</title>

</head>

<body>

<p>

<input type="button" name="anniu1" onClick=‘copyToClipBoard()‘ value="复制专题地址和url地址,传给QQ/MSN上的好友">

<script language="javascript">

function copyToClipBoard(){

var clipBoardContent="";

clipBoardContent+=document.title;

clipBoardContent+="";

clipBoardContent+=this.location.href;

window.clipboardData.setData("Text",clipBoardContent);

alert("复制成功,请粘贴到你的QQ/MSN上推荐给你的好友");

}

</script>

三、直接复制 url

?


1

2

3

4

5

6

7

8

9

<input type="button" name="anniu2" onClick=‘copyUrl()‘ value="复制URL地址">

<script language="javascript">

function copyUrl()

{

var clipBoardContent=this.location.href;

window.clipboardData.setData("Text",clipBoardContent);

alert("复制成功!");

}

</script>

四、点击文本框时,复制文本框里面的内容

?


1

2

3

4

5

6

7

8

9

<input onclick="oCopy(this)" value="你好.要copy的内容!">

<script language="javascript">

function oCopy(obj){

obj.select();

js=obj.createTextRange();

js.execCommand("Copy")

alert("复制成功!");

}

</script>

五、复制文本框或者隐藏域中的内容

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<script language="javascript">

function CopyUrl(target){

target.value=myimg.value;

target.select();

js=myimg.createTextRange();

js.execCommand("Copy");

alert("复制成功!");

}

function AddImg(target){

target.value="[IMG]"+myimg.value+"[/ img]";

target.select();

js=target.createTextRange();

js.execCommand("Copy");

alert("复制成功!");

}

</script>

六、复制 span 标记中的内容

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<script type="text/javascript">

</script>

<br />

<br />

<script type="text/javascript">function copyText(obj)

{

var rng = document.body.createTextRange();

rng.moveToElementText(obj);

rng.scrollIntoView();

rng.select();

rng.execCommand("Copy");

rng.collapse(false);

alert("复制成功!");

}

</script>

七、浏览器兼容  copyToClipboard("拷贝内容")

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

function copyToClipboard(txt) {

      if (window.clipboardData) {

        window.clipboardData.clearData();

        clipboardData.setData("Text", txt);

        alert("复制成功!");

 

      } else if (navigator.userAgent.indexOf("Opera") != -1) {

        window.location = txt;

      } else if (window.netscape) {

        try {

          netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");

        } catch (e) {

          alert("被浏览器拒绝!\n请在浏览器地址栏输入‘about:config‘并回车\n然后将 ‘signed.applets.codebase_principal_support‘设置为‘true‘");

        }

        var clip = Components.classes[‘@mozilla.org/widget/clipboard;1‘].createInstance(Components.interfaces.nsIClipboard);

        if (!clip)

          return;

        var trans = Components.classes[‘@mozilla.org/widget/transferable;1‘].createInstance(Components.interfaces.nsITransferable);

        if (!trans)

          return;

        trans.addDataFlavor("text/unicode");

        var str = new Object();

        var len = new Object();

        var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);

        var copytext = txt;

        str.data = copytext;

        trans.setTransferData("text/unicode", str, copytext.length * 2);

        var clipid = Components.interfaces.nsIClipboard;

        if (!clip)

          return false;

        clip.setData(trans, null, clipid.kGlobalClipboard);

        alert("复制成功!");

      }

    }

八、兼容各大浏览器的复制代码(结合ZeroClipboard.js)

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

<html>

<head>

<title>Zero Clipboard Test</title>

<script type="text/javascript" src="ZeroClipboard.js"></script>

<script language="JavaScript">

 var clip = null;

 function $(id) { return document.getElementById(id); }

 function init() {

     clip = new ZeroClipboard.Client();

     clip.setHandCursor(true);    

     clip.addEventListener(‘mouseOver‘, function (client) {

  // update the text on mouse over

  clip.setText( $(‘fe_text‘).value );

     });

     

     clip.addEventListener(‘complete‘, function (client, text) {

  //debugstr("Copied text to clipboard: " + text );

  alert("该地址已经复制,你可以使用Ctrl+V 粘贴。");

     });

     clip.glue(‘clip_button‘, ‘clip_container‘ );

 }

</script>

</head>

<body onLoad="init()">

<input id="fe_text" cols=50 rows=5 value=复制内容文本1 >

<span id="clip_container"><span id="clip_button"><b>复制</b></span></span>

</body>

</html>

 

时间: 2024-10-25 13:17:53

js copy的相关文章

使用Backbone.js, ExpressJS, node.js, MongoDB的web应用样板工程

这是web应用的一个完整的样板工程,用到了Backbone.js & Marionette, node.js & ExpressJS,MongoDB & Moogoose, Handlebars, Grunt.js, Bower和Browserify! 我建立了一个超级基础的单页面应用程序(SPA),就是一个简单的通讯录管理器, 但麻雀虽小,五脏俱全.我写这篇文章的目的是介绍一下这个应用所用到的整个技术栈:后端,数据,前端,工具和测试.主要包括下面这些技术: 后端: node.js

js 完美兼容浏览器的复制功能

1,js结合swf的复制功能,完美兼容火狐,谷歌,360,ie8,使用示例:(ps:引入copy.swf比较重要,文件传送门 解压密码:http://www.bieanju.com/,为了防止360删除文件请解压后去除后缀的1) function copyText(){        var clip = new ZeroClipboard.Client();         clip.setHandCursor(true);                //var text= documen

js实现浏览器兼容复制功能

经常看到这样一种效果:就是单击一个按钮,就将某个区域内的内容,复制到了剪切板中.其实这个功能实现起来也不难,核心就是用到了window子对象clipboardData的一个方法:setData()语法:    clipboardData.setData(sDataFormat, sData)参数:sDataFormat:要复制的内容的格式:sData:要复制的内容.返回值:复制成功返回true:失败返回false. <script language="JavaScript">

Gulp.js - 简单、直观的自动化项目构建工具

代码示例: var gulp = require('gulp'); var coffee = require('gulp-coffee'); var concat = require('gulp-concat'); var uglify = require('gulp-uglify'); var imagemin = require('gulp-imagemin'); var paths = { scripts: ['client/js/**/*.coffee', '!client/extern

requirejs 使用实例r.js打包

在这里,请先看基础文章与相关技术文档: 安装: npm init npm install requirejs --save npm install [email protected]1.11.1 --save 创建基本目录: js/main.js&test.js css/index.css index.html build.js copy requirejs目录下的r.js到根目录 创建导出目录:one 测试目录创建完成! index.html <!DOCTYPE html> <

对前端web js,css文件进行压缩混淆

下载 yuicompressor jar包到本地路径 写一个批处理脚本compressJs.bat,将要压缩的js文件放在批处理文件的同一路径,yuicompressor.jar也放在同一路径 运行批处理文件,在该路径下会生成一个min文件夹,里面的*.min.jar就是压缩混淆后的js文件 css文件同上操作 一下是批处理脚本的内容: echo off set PathName=%cd%set minPath=%PathName%\min if exist "%minPath%" (

JQ JS复制到剪贴板

示例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script src="clipboard.min.js"></script> <!-- Target --&

bootscript/javascript组件

javascript组件 (1)每一个插件(带有js功能的组件),想使用bootstrap插件,一个是要去写他的html,第二个是使用CSS去修饰它,再引入相应的js文件. bootstrap框架里的轮播图,他有自己的js文件. JavaScript 插件可以单个引入(使用 Bootstrap 提供的单个 *.js 文件),或者一次性全部引入(使用 bootstrap.js 或压缩版的 bootstrap.min.js). 建议使用压缩版的 JavaScript 文件 bootstrap.js

Laravel_Elixir_gulp任务利器安装

目录 说明 安装 1安装gulp 2安装Elixir 3Elixir快速入门 4合并cssjs 5版本控制version 6复制copy 7方法串联 1.说明 详细说明暂时省略,后期补充.小白的角度理解:gulp是管理你的css.js.图片等静态资源文件,包括复制.合并.压缩等功能,elixir是管理和使用gulp处理后的文件的,主要方便开发小组统一管理... 2.安装 1)安装gulp 由于Gulp是基于Node.js的,所以安装之前需要先安装Node.不管你使用的是什么操作系统,都可以从No