Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Memintas dan Mengekstrak Teks Biasa daripada Data yang Ditampal dalam JavaScript Merentasi Pelayar?

Bagaimanakah Saya Boleh Memintas dan Mengekstrak Teks Biasa daripada Data yang Ditampal dalam JavaScript Merentasi Pelayar?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-11 14:17:10900semak imbas

How Can I Intercept and Extract Plain Text from Pasted Data in JavaScript Across Browsers?

Mengesan dan Mendapatkan Semula Data yang Ditampal dalam JavaScript (Cross-Pelayar)

Aplikasi web selalunya perlu menangkap dan pra-proses data sebelum ia ditampal ke dalam penyunting teks. Ini mungkin melibatkan pengalihan keluar elemen tertentu, seperti teg HTML, sambil mengekalkan pemformatan sedia ada. Walau bagaimanapun, teknik sanitasi pasca tampal tradisional boleh mengganggu pemformatan teks sebelumnya.

Untuk menangani cabaran ini, mari kita terokai penyelesaian yang menggunakan API penyemak imbas moden untuk memintas acara tampal dan mendapatkan semula data yang ditampal:

Penyelesaian #1: Pengekstrakan Teks Biasa (Firefox 22 dan Moden Pelayar)

Untuk penyemak imbas yang menyokong API Pemindahan Data (cth., IE9 , Firefox 22 , Chrome, Safari, Edge), pendekatan berikut membenarkan pengekstrakan terpilih teks biasa daripada data papan keratan:

function handlePaste(e) {
  var clipboardData, pastedData;

  // Stop data actually being pasted into div
  e.stopPropagation();
  e.preventDefault();

  // Get pasted data via clipboard API
  clipboardData = e.clipboardData || window.clipboardData;
  pastedData = clipboardData.getData('Text');

  // Do whatever with pasteddata
  alert(pastedData);
}

document.getElementById('editableDiv').addEventListener('paste', handlePaste);

Penyelesaian ini memanfaatkan kaedah e.clipboardData.getData('Teks') untuk mengekstrak kandungan teks biasa daripada data yang dipindahkan semasa acara tampal.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memintas dan Mengekstrak Teks Biasa daripada Data yang Ditampal dalam JavaScript Merentasi Pelayar?. 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