以前、アプリケーションはwindow.clipboardData.getData( 'Text')からクリップボードの内容を取得していました。しかしこれはfirefoxとchromeではサポートされていません。クロスブラウザのJavaScriptペースト
コピーするには、document.execCommand( 'copy')が呼び出され、UIコンテンツがクリップボードに取得されました。 document.execCommand( 'copy')はfirefoxとchromeでサポートされているので、そこで動作しています。
ただし、document.queryCommandSupported( 'paste')がtrueでdocument.queryCommandEnabled( 'paste')がfalseの場合でも、document.execCommand( 'paste')はFirefoxでfalseを返しますが、firefoxとchromeではfalseです。しかし、それは真実を返すIE.Isそこにdocument.execCommand( '貼り付け')をtrueに戻すjavascriptの任意の方法ですか?
コンテンツをUIに貼り付けるボタンがあります。このアプリケーションでは、基本的にテーブル行がクリップボードのデータから追加されます。 ClipboradDataは、ctrl + c ctrl + vイベントをトラップすることによってキャプチャされます。しかし、私は、ClipboradData、onclickイベントへのアクセス、またはdocument.execCommand( 'paste')を通してクリップボードデータへのアクセスを望んでいます。これはfalseを返します(firefoxとchromeで)。
function paste() {
var input = document.createElement('TEXTAREA');
input.setAttribute('name', 'post');
input.setAttribute('maxlength', 5000);
input.setAttribute('cols',80);
input.setAttribute('rows', 40);
document.body.appendChild (input);
input.contentEditable = true;
input.focus();
if(document.queryCommandEnabled('paste')){
document.execCommand('paste',false,null);
result=input.value;
}
document.body.removeChild(input);
return result;
}
クリップボードから貼り付けるソリューションを教えてください。
Googleドキュメントは拡張子なしでこれを行うと思われます – bnieland
@bnieland Chromeを使用している場合は、Firefoxを使用していても機能しない場合はtrueです(直接ネイティブクライアントを使用しています)。 –
私はそれをテストしていませんが、Googleドキュメント*は拡張機能を使用しているようです。 – bnieland