Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah Saya Boleh Lumpuhkan Ctrl C dan Ctrl V dalam Kawasan Teks Tertentu Menggunakan JavaScript?

Bagaimanakah Saya Boleh Lumpuhkan Ctrl C dan Ctrl V dalam Kawasan Teks Tertentu Menggunakan JavaScript?

Linda Hamilton
Linda Hamiltonasal
2024-10-30 20:51:02971semak imbas

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

Melumpuhkan Ctrl C dan Ctrl V dalam JavaScript untuk Kawasan Teks Terhad

Dalam senario tertentu, adalah wajar untuk menyekat pengguna daripada menyalin dan menampal kandungan ke dalam kawasan teks tertentu. Ini sering dilakukan untuk memastikan kandungan kekal asli dan tidak diubah. JavaScript menyediakan cara yang mudah untuk mengesan kombinasi kekunci Ctrl V dan Ctrl C serta menyekat tindakan ini.

Untuk mencapai matlamat ini, kami boleh menggunakan acara keydown dan keyup untuk memantau tekanan kekunci. Kami mentakrifkan kod kunci untuk Ctrl (17 atau 91 bergantung pada sistem pengendalian), serta V dan 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>

Seterusnya, kami menambah pengendali kekunci pada elemen textarea yang ingin kami hadkan. Ia menyemak sama ada Ctrl ditekan dan jika V atau C ditekan serentak, ia mengembalikan palsu untuk mengelakkan tindakan salin atau tampal lalai.

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

Untuk menunjukkan bahawa penyelesaian ini sememangnya menghalang salin dan tampal, kami boleh menambah kawasan teks lain yang tidak dihadkan dan perhatikan bahawa operasi salin dan tampal berfungsi di sana.

<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>

Ringkasnya, dengan mengesan kombinasi kekunci Ctrl V dan Ctrl C dan menghalang tindakan lalai dalam kawasan teks tertentu, kami boleh dengan berkesan menyekat pengguna daripada menyalin atau menampal kandungan ke dalam kawasan tersebut.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Lumpuhkan Ctrl C dan Ctrl V dalam Kawasan Teks Tertentu Menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn