カスタム CSS フォントでテキストを表示するために、新しい CSS ルールを Android ブラウザのページに挿入する JavaScript を作成しています (置換後)。
CSSルールを挿入しようとした方法は次のとおりです。
var css = '@font-face {font-family:"font"; src:url(http://www.example.com/font.ttf);} si{font-family:"font"}';
if(document.getElementsByTagName("style")[0]){
var style = document.getElementsByTagName("style")[0];
} else {
var style = document.createElement("style");
style.type = "text/css";
document.getElementsByTagName("HEAD")[0].appendChild(style);
}
var sheet = style.sheet;
sheet.insertRule(css, sheet.cssRules.length);
次に、テキストは JavaScript XPath 実装を使用して置き換えられます。ラインの交換はこのモデルにあります:
text = text.replace(/\'/g, "<si>♥</si>");
テキストの置換は完全に行われます。しかし、挿入する CSS ルールの部分が機能していません。置き換えられたテキストは次のように表示されます<si>♥</si>(タグも印刷されます)。:(
CSSルールを挿入する私のコードを修正してください。または、これを行う他の方法を提案してください。
ありがとう!
更新: CSS フォントをサポートする Android 2.2 でこれをエミュレートしています。