HTML-Entitäten in JavaScript kodieren
Bei der Eingabe von Inhalten in ein Content-Management-System (CMS) ist es wichtig, Sonderzeichen wie ® bis zu verarbeiten Gewährleistung einer ordnungsgemäßen Anzeige in allen Browsern. Um dieses Problem zu lösen, kann JavaScript verwendet werden, um diese Symbole zu finden und in geeignete HTML-Entitäten umzuwandeln.
Mit regulären Ausdrücken kann die Konvertierung erreicht werden, indem bestimmte Zeichenbereiche durch die entsprechenden HTML-Entitäten ersetzt werden. Der JavaScript-Code würde wie folgt aussehen:
var encodedStr = rawStr.replace(/[\u00A0-\u9999<>\&]/g, function(i) { return '&#' i.charCodeAt(0) ';'; });
Dieser Code ersetzt alle Zeichen innerhalb des angegebenen Unicode-Bereichs (00A0-9999) und Sonderzeichen (&, ) durch ihre HTML-Entitätsäquivalente. Beispielsweise wird ® zu ®.
Alternativ in ES6:
const encodedStr = rawStr.replace(/[\u00A0-\u9999<>\&]/g, i => '&#' i.charCodeAt(0) ';')
Dieser Ansatz stellt die Konvertierung aller anwendbaren Zeichen in HTML-Entitäten sicher. Es ist jedoch wichtig zu beachten, dass Systemschriftartenkonfigurationen und andere Faktoren potenziell die korrekte Anzeige dieser Zeichen beeinträchtigen können.
Bedenken Sie die potenziellen Probleme bei der Zeichenkodierung, wie z. B. die Sicherstellung der UTF8-Kodierung und der Datenbankspeicherung, um Anzeigeunterschiede zu verringern .
Darüber hinaus kann ein passender CSS-Stil für bestimmte Anzeigeeinstellungen angewendet werden, wie z. B. Schriftgröße und Abstand:
sup { font-size: 0.6em; padding-top: 0.2em; }
Bei Implementierung gewährleistet dieses CSS eine konsistente Anzeige der HTML-Entitäten.
Dokumentation:
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3