copy2clip

IE以外のブラウザでは、javascriptの「window.clipboardData.setData」を使って、クリップボードにコピーが出来ません。

copy2clipは、flashとjavascriptを組み合わせてクリップボードにテキストをコピーします。

"Download copy2clip"

"Download copy2clip"を保存してください。

設置方法

詳細仕様を参考に任意のフォルダに、swfを配置してください。
※copy2clip.swfのほかに、読み込み用の画像ファイル、javascriptの作成が必要です。

copy2clip.swfの詳細仕様

htmlに、swfobjectなどを使用して配置してください。
※その際、height,widthを読み込むimgと同じ大きさにしてください。

ファイル名

copy2clip.swf

flashvars

func:呼び出す関数名
img:読み込むファイル名
param:javascriptに渡す引数

仕様

imgで指定された画像を読み込み表示する。
クリックされたら、funcで指定した名前の関数を引数paramで呼び出し、戻り値をクリップボードに格納する。

呼び出す関数の詳細仕様

copy2clip.swfから呼ばれるjavascriptの関数を、htmlに定義してください。

仕様

IEかどうか判定し、IEの場合は、クリップボードにコピーしたい文字列をwindow.clipboardData.setDataでクリップボードにコピーし、nullを返却する。
IE以外の場合は、クリップボードにコピーしたい文字列を返却する。

実装例

function copy2clip_getData(param) {
	var text = document.getElementById(param).value;
	//alert(param + ":" + text);
	if(window.navigator.userAgent.toLowerCase().indexOf("msie") > -1) {
		window.clipboardData.setData('text', text);
		return null;
	} else {
		return text;
	}
}
										

jQueryを利用した実装例

function copy2clip_getData(param) {
	var text = $("#" + param).val();
	//alert(param + ":" + text);
	if ($.browser.msie) {
		window.clipboardData.setData('text', text);
		return null;
	} else {
		return text;
	}
}
										

サンプル

実際の設置サンプルです。(テキストボックスは読み取り専用になっています。)

サンプル1

←画像を押すとクリップボードにコピーされます。

サンプル2

ページ内に複数置くこともできます。

画像は自由に指定できます。
abcdefg

サンプル3

画像ではなくswfを読み込むこともできます。


MEMO

▲ページのトップへ