JSページコピー


ホームページを見ていると、よく「リンクのコピー」や「ボタン」を見ます.今日も一つ作りました.
1.テキストボックスのテキストをコピーする
var clipText = document.getElementById(id).createTextRange();
clipText.execCommand("Copy");
 
サンプルコード
<html>
<head>
<title>JS  </title>
<script type="text/javascript">
function copyText(id) {
	var targetText = document.getElementById(id);
	try {
		var clipText = targetText.createTextRange();
		clipText.execCommand("Copy");
		alert('    ,   Ctrl+V  ');
	} catch(e) {
		targetText.focus();//    
		targetText.select();//    
		alert('             ,
Ctrl+C 。'); } } </script> </head> <body> <div> <input id="shareUrl" value="http://chenfeng0104.iteye.com" style="width:260px;"/> <input type="button" value="Copy" onclick="copyText('shareUrl');"/> </div> </body> </html>
 
 
2.現在のページURLをコピーする
<html>
<head>
<title>JS    URL</title>
<script type="text/javascript">
	copyClipboard=function(txt){
		if(window.clipboardData){
			window.clipboardData.clearData();
			window.clipboardData.setData("Text",txt);
		}else if(navigator.userAgent.indexOf("Opera")!=-1){
			window.location=txt;
		}else if(window.netscape){
			try{
				netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
			}catch(e){
				alert("  firefox              ,   ’about:config’   signed.applets.codebase_principal_support’   true’    ,     firefox    /greprefs/all.js");
				return false;
			}
			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);
		}
	}

	function copyUserHomeToClipBoard(){
		var clipBoardContent = document.URL;
		var clipBoardTitle = document.title;
		if(copyClipboard(clipBoardContent)!=false){
			alert("    ,      QQ/MSN        !\r
\r
:\r
"+clipBoardTitle+clipBoardContent); } } </script> </head> <body> <div> <input type="button" value="Copy" onclick="copyUserHomeToClipBoard();"/> </div> </body> </html>