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
画像は自由に指定できます。