0

クリップボード IE JavaScript 関数へのコピーを作成しようとしていますが、コードが機能しません。パラメータをフォーマットして引数を渡すにはどうすればよいですか?

/*invisible storage*/
<textarea id="storageBox" STYLE="display:none;">
</textarea>

<p id="abc">I WANT TO COPY THIS TEXT</p>

<button onClick="Copy(abc);">Copy</button><br />

<script type="text/javascript">
function Copy(txt) {
storageBox.innerText = txt.innerText;
Copied = storageBox.createTextRange();
Copied.execCommand("RemoveFormat");
Copied.execCommand("Copy");
}
</script>

zclip を使用してこれを記述できる人、または同様の例を見せてくれる人にとっては大きなカルマです!!

4

3 に答える 3

0

あなたのスクリプトは正常に動作しているとコメントしましたが、HTML. を設定した場合display: noneexecCommand()コンテンツはコピーできません。したがって、これを行う必要があります:

<textarea id="storageBox" style="width: 0px; height: 0px; border: 0px;"></textarea>
于 2012-08-13T19:25:19.813 に答える
0

次の変更が役立ちます。

... onclick="Copy('abc');"...

storageBox.value = document.getElementById(txt).innerText

おもう。何が機能しないか、またはクリップボードを乗っ取ろうとしている理由についても具体的に述べていませんでした (ユーザーが重要なものをそこに持っている場合はどうなりますか?)

于 2012-08-13T18:57:46.553 に答える
0

まず、パラメーターを文字列として渡す必要があります。

<button onClick="Copy('abc');">Copy</button><br />

関数では、この ID に基づいて (文字列として) DOM から要素を取得する必要があります。

function Copy(txt) {
   storageBox.innerText = document.getElementById(txt).innerText;
   ...
于 2012-08-13T18:58:12.967 に答える