首頁  >  文章  >  web前端  >  如何使用 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn