Bagaimana untuk Mengekodkan Entiti HTML dalam JavaScript untuk Paparan Kandungan Dijana Pengguna yang Konsisten?

Susan Sarandon
Lepaskan: 2024-10-31 07:08:30
asal
769 orang telah melayarinya

How to Encode HTML Entities in JavaScript for Consistent User-Generated Content Display?

Enkodkan Entiti HTML dalam JavaScript

Apabila bekerja dengan kandungan yang dijana pengguna, entiti seperti ®, &, ©, dan ™ mungkin tidak dipaparkan secara konsisten merentas pelayar. JavaScript menyediakan beberapa kaedah untuk mengekod entiti ini dalam HTML.

Menukar kepada Entiti HTML

Untuk menukar simbol kepada entiti HTML yang sepadan, gunakan kod ini:

<code class="js">var encodedStr = rawStr.replace(/[\u00A0-\u9999<>\&amp;]/g, function(i) {
   return '&amp;#'+i.charCodeAt(0)+';';
});</code>
Salin selepas log masuk

Memaparkan sebagai Superskrip

Untuk memaparkan entiti yang dikodkan sebagai superskrip dengan penggayaan tersuai, gunakan CSS:

<code class="css">sup {
  font-size: 0.6em;
  padding-top: 0.2em;
}</code>
Salin selepas log masuk

Contoh Pelaksanaan

<code class="js">var regs = document.querySelectorAll('®');
for (var i = 0, l =regs.length; i < l; ++i ) {
  var div = document.createElement('sup');
  var text = document.createTextNode(encodedStr);
  div.appendChild(text);
  regs[i].parentNode.insertBefore(div);
}</code>
Salin selepas log masuk

Kod ini:

  1. Memilih semua elemen dengan simbol ®.
  2. Mencipta elemen sup dan menambahkannya sebelum elemen yang dipilih.
  3. Menambahkan entiti HTML yang dikodkan pada elemen sup.

Pertimbangan Tambahan

  • Gunakan pengekodan aksara UTF8 dan storan pangkalan data untuk pastikan paparan yang betul.
  • Konfigurasi fon penyemak imbas masih boleh menjejaskan penampilan aksara tertentu.

Dokumentasi

  • String.charCodeAt : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt
  • Entiti Aksara HTML: http://www.chucke.com/entities. html

Atas ialah kandungan terperinci Bagaimana untuk Mengekodkan Entiti HTML dalam JavaScript untuk Paparan Kandungan Dijana Pengguna yang Konsisten?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan