ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript を使用して特定のテキスト領域で Ctrl C と Ctrl V を無効にするにはどうすればよいですか?

JavaScript を使用して特定のテキスト領域で Ctrl C と Ctrl V を無効にするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-30 20:51:02971ブラウズ

How Can I Disable Ctrl C and Ctrl V in Specific Text Areas Using JavaScript?

JavaScript で制限付きテキスト領域の Ctrl C と Ctrl V を無効にする

特定のシナリオでは、ユーザーによるコピーやコピーを制限することが望ましい場合があります。コンテンツを特定のテキスト領域に貼り付ける。これは多くの場合、コンテンツがオリジナルで変更されていないことを保証するために行われます。 JavaScript は、Ctrl V キーと Ctrl C キーの組み合わせを検出し、これらのアクションを制限する便利な方法を提供します。

これを実現するには、keydown イベントと keyup イベントを利用してキーの押下を監視できます。 Ctrl (オペレーティング システムに応じて 17 または 91)、および V と C のキー コードを定義します。

<code class="js">var ctrlDown = false;
var ctrlKey = 17;
var cmdKey = 91;
var vKey = 86;
var cKey = 67;

$(document).keydown(function(e) {
    if (e.keyCode == ctrlKey || e.keyCode == cmdKey) {
        ctrlDown = true;
    }
}).keyup(function(e) {
    if (e.keyCode == ctrlKey || e.keyCode == cmdKey) {
        ctrlDown = false;
    }
});</code>

次に、制限する textarea 要素に keydown ハンドラーを追加します。 Ctrl キーが押されているかどうかを確認し、同時に V または C キーが押されているかどうかを確認し、デフォルトのコピーまたはペースト操作を防止するために false を返します。

<code class="js">$(".no-copy-paste").keydown(function(e) {
    if (ctrlDown && (e.keyCode == vKey || e.keyCode == cKey)) {
        return false;
    }
});</code>

このソリューションが実際にコピー アンド ペーストを防止することを示すために、以下を追加できます。制限されていない別のテキスト領域を作成し、そこでコピーと貼り付けの操作が機能することを確認します。

<code class="html"><h3>Ctrl+c Ctrl+v disabled</h3>
<textarea class="no-copy-paste"></textarea>

<br>
<br>

<h3>Ctrl+c Ctrl+v allowed</h3>
<textarea></textarea></code>

要約すると、Ctrl V キーと Ctrl C キーの組み合わせを検出し、特定のテキスト領域でのデフォルトの動作を防ぐことで、効果的に次のことができます。ユーザーがこれらの領域にコンテンツをコピーまたはペーストすることを制限します。

以上がJavaScript を使用して特定のテキスト領域で Ctrl C と Ctrl V を無効にするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。